···9090- `jacquard`: Main crate [](https://crates.io/crates/jacquard) [](https://docs.rs/jacquard)
9191- `jacquard-common`: Foundation crate [](https://crates.io/crates/jacquard-common) [](https://docs.rs/jacquard-common)
9292- `jacquard-api`: Autogenerated API bindings [](https://crates.io/crates/jacquard-api) [](https://docs.rs/jacquard-api)
9393+- `jacquard-axum`: Axum extractor and other helpers [](https://crates.io/crates/jacquard-axum) [](https://docs.rs/jacquard-axum)
9394- `jacquard-oauth`: atproto OAuth implementation [](https://crates.io/crates/jacquard-oauth) [](https://docs.rs/jacquard-oauth)
9495- `jacquard-identity`: Identity resolution [](https://crates.io/crates/jacquard-identity) [](https://docs.rs/jacquard-identity)
9596- `jacquard-lexicon`: Lexicon parsing and code generation [](https://crates.io/crates/jacquard-lexicon) [](https://docs.rs/jacquard-lexicon)
+2-1
crates/jacquard/src/lib.rs
···160160161161/// XRPC client traits and basic implementation
162162pub mod client;
163163-/// OAuth usage helpers (discovery, PAR, token exchange)
164163165164#[cfg(feature = "api")]
166165/// If enabled, re-export the generated api crate
···172171pub use jacquard_derive::*;
173172174173pub use jacquard_identity as identity;
174174+175175+/// OAuth usage helpers (discovery, PAR, token exchange)
175176pub use jacquard_oauth as oauth;