Skip to main content

Crate apx_sdk

Crate apx_sdk 

Source
Expand description

§APx

A minimalistic 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:

[dependencies]
apx_sdk = "0.24.0"

§Examples

Fetch an object:

use apx_sdk::{
    agent::FederationAgent,
    fetch::{fetch_object, FetchObjectOptions},
};
let object_id = "https://mastodon.social/@Mastodon";
let agent = FederationAgent::default();
let options = FetchObjectOptions::default();
let object = fetch_object(&agent, object_id, options).await?;
object.verify_origin()?;

More examples:

Re-exports§

pub use apx_core as core;

Modules§

addresses
WebFinger addresses.
agent
Agent: responsible for making requests to other nodes.
authentication
Verifying the authenticity of objects.
constants
Commonly used constants.
deliver
Delivering activities.
deserialization
Deserializing objects.
fetch
Retrieving objects or media.
http_server
Helper functions for implementing ActivityPub servers.
identifiers
Parsing object identifiers.
jrd
Creating and parsing JSON Resource Descriptors.
ownership
Helper functions for authorization checks.
utils
Miscellaneous utilities.