// the find
atrium-rs/atrium
Rust libraries for Bluesky's AT Protocol services.
ATrium is the primary Rust implementation of AT Protocol client libraries, covering the full Bluesky API surface through generated types from the lexicon schema. If you're building a Bluesky bot, client, or feed generator in Rust, this is your starting point — there's no serious alternative. The `bsky-sdk` crate sits on top of it for higher-level operations.
Code generation from lexicon schemas means the API types stay in sync with the protocol spec rather than drifting via manual updates. The layered crate design (xrpc → atrium-api → bsky-sdk) lets you pull in only what you need. WASM support is a first-class concern (dedicated CI workflow), which matters for browser-side AT Protocol tooling. The moderation/Ozone APIs are fully covered, not an afterthought.
420 stars for the only serious Rust AT Protocol library suggests Rust + Bluesky is still a thin audience — you're betting on both the protocol and the language ecosystem maturing together. The generated code is a maintenance trap: any breaking lexicon change requires a codegen run and re-release across multiple crates simultaneously. Session management and token refresh live in `atrium-api` rather than `bsky-sdk`, which makes the abstraction boundary unclear — you have to read both crates to understand auth. Documentation beyond API reference is sparse; the README links to docs.rs and calls it done, so you'll be reading source to understand patterns.