shrike 0.1.1

AT Protocol library for Rust
Documentation

shrike

crates.io docs.rs License

AT Protocol library for Rust. Designed to be correct, fast, and easy to use.

Modules

Module Description
shrike::syntax core identifier types (DID, Handle, NSID, AT-URI, TID, RecordKey)
shrike::cbor DAG-CBOR encoding and decoding
shrike::crypto P-256 and secp256k1 signing, verification, and did:key encoding
shrike::mst Merkle Search Tree implementation
shrike::repo AT Protocol repository with signed commits
shrike::car CAR v1 archive reading and writing
shrike::lexicon Lexicon schema loading and record validation
shrike::xrpc XRPC HTTP client with retry and auth
shrike::xrpc_server Axum-based XRPC server framework
shrike::identity DID resolution and handle verification
shrike::streaming firehose and Jetstream WebSocket consumers
shrike::sync repository download and verification
shrike::backfill concurrent bulk repo downloading
shrike::labeling label signing and verification
shrike::oauth OAuth 2.0 client with PKCE and DPoP
shrike::api generated types and functions for the com.atproto.*, app.bsky.*, etc. lexicons

Each module is behind a feature flag. Enable full for everything, or pick what you need.

[dependencies]
shrike = { version = "0.1", features = ["full"] }

License

Dual-licensed under MIT and Apache 2.0.