[package] name = "slices" version = "0.2.0" edition = "2024" [dependencies] # Core async runtime tokio = { version = "1.0", features = ["full"] } # Database and ORM sqlx = { version = "0.8", features = ["postgres", "chrono", "json", "runtime-tokio-rustls", "migrate"] } # Serialization serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" # Lexicon validation slices-lexicon = { path = "../crates/slices-lexicon" } # HTTP client and server reqwest = { version = "0.12", features = ["json", "stream"] } axum = { version = "0.8", features = ["ws", "macros"] } axum-extra = { version = "0.10", features = ["form"] } tower = "0.5" tower-http = { version = "0.6", features = ["cors", "trace"] } # Error handling thiserror = "1.0" anyhow = "1.0" # Logging and tracing tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Time handling chrono = { version = "0.4", features = ["serde"] } # UUID generation uuid = { version = "1.0", features = ["v4", "serde"] } # Base64 encoding for cursors base64 = "0.22" # Environment variables dotenvy = "0.15" # Async utilities futures-util = "0.3" async-trait = "0.1" # AT Protocol client atproto-client = "0.12.0" atproto-identity = "0.12.0" atproto-oauth = "0.12.0" atproto-jetstream = "0.12.0" # Middleware for HTTP requests with retry logic reqwest-middleware = { version = "0.4.2", features = ["json", "multipart"] } reqwest-chain = "1.0.0" # Job queue sqlxmq = "0.6" regex = "1.11.2" # Redis for caching and pub/sub redis = { version = "0.32", features = ["tokio-comp", "connection-manager", "aio"] } # GraphQL server async-graphql = { version = "7.0", features = ["dynamic-schema", "dataloader"] } async-graphql-axum = "7.0" lazy_static = "1.5" async-stream = "0.3"