1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
//! # APx
//!
//! A minimalistic [ActivityPub](https://www.w3.org/TR/activitypub/) toolkit written in Rust.
//!
//! Features:
//!
//! - Networking.
//! - Authentication (HTTP signatures, object integrity proofs).
//! - WebFinger.
//! - Nomadic identity (client & server).
//! - WebAssembly support.
//!
//! Using in a Cargo project:
//!
//! ```toml
//! [dependencies]
//! apx_sdk = "0.23.0"
//! ```
//!
//! ## Examples
//!
//! Fetch an object:
//!
//! ```rust
//! use apx_sdk::{
//! agent::FederationAgent,
//! fetch::{fetch_object, FetchObjectOptions},
//! };
//! # use apx_sdk::fetch::FetchError;
//! # async fn run() -> Result<(), FetchError> {
//! let object_id = "https://mastodon.social/@Mastodon";
//! let agent = FederationAgent::default();
//! let options = FetchObjectOptions::default();
//! let object = fetch_object(&agent, object_id, options).await?;
//! # Ok(())
//! # }
//! ```
//!
//! More examples:
//!
//! - [FEP-ae97 client](https://codeberg.org/silverpill/mitra/src/branch/main/apx_sdk/examples/fep_ae97_client.rs)
//! - [FEP-ae97 server](https://codeberg.org/silverpill/mitra/src/branch/main/apx_sdk/examples/fep_ae97_server.rs)
pub use apx_core as core;