[package] name = "atauth" version = "1.4.0" edition = "2021" authors = ["ATAuth Contributors"] description = "Generic AT Protocol (Bluesky) authentication library for Rust applications" license = "MIT" repository = "https://github.com/Cache8063/atauth" keywords = ["atproto", "bluesky", "authentication", "oauth", "did"] categories = ["authentication", "web-programming"] readme = "README.md" [features] default = ["session-sqlite"] session-sqlite = ["rusqlite", "r2d2", "r2d2_sqlite"] rate-limit = [] full = ["session-sqlite", "rate-limit"] [dependencies] # Core cryptography hmac = "0.12" sha2 = "0.10" subtle = "2.5" base64 = "0.22" # Serialization serde = { version = "1", features = ["derive"] } serde_json = "1" # Error handling thiserror = "1" # Time chrono = { version = ">=0.4.20, <0.5", features = ["serde"] } # Async runtime (optional) tokio = { version = "1", features = ["rt-multi-thread", "macros"], optional = true } # SQLite session store (optional) rusqlite = { version = "0.33", optional = true } r2d2 = { version = "0.8", optional = true } r2d2_sqlite = { version = "0.25", optional = true } # Secret zeroing on drop zeroize = "1" # Logging tracing = "0.1" [dev-dependencies] tokio = { version = "1", features = ["rt-multi-thread", "macros"] } [lib] name = "atauth" path = "src/lib.rs" [[example]] name = "basic_verification" path = "examples/basic_verification.rs" [[example]] name = "with_session_store" path = "examples/with_session_store.rs"