An easy-to-host PDS on the ATProtocol, MacOS. Grandma-approved.
at main 82 lines 2.0 kB view raw
1[workspace] 2members = [ 3 "crates/relay", 4 "crates/repo-engine", 5 "crates/crypto", 6 "crates/common", 7 "apps/identity-wallet/src-tauri", 8] 9resolver = "2" 10 11[workspace.package] 12version = "0.1.0" 13edition = "2021" 14publish = false 15 16# Declare shared dependency versions here. 17# Individual crates opt in with `{ workspace = true }`. 18[workspace.dependencies] 19# Async runtime 20tokio = { version = "1", features = ["full"] } 21 22# Web framework (relay) 23axum = "0.7" 24 25# HTTP client (relay) 26reqwest = { version = "0.12", features = ["json"] } 27 28# Database 29sqlx = { version = "0.8", features = ["runtime-tokio", "sqlite"] } 30 31# Serialization 32serde = { version = "1", features = ["derive"] } 33serde_json = "1" 34toml = "0.8" 35 36# CLI argument parsing (relay) 37clap = { version = "4", features = ["derive", "env"] } 38 39# Error handling 40anyhow = "1" 41thiserror = "2" 42 43# Observability 44tracing = "0.1" 45tracing-subscriber = { version = "0.3", features = ["env-filter"] } 46tracing-opentelemetry = "0.29" 47opentelemetry = { version = "0.28", features = ["trace"] } 48opentelemetry-otlp = { version = "0.28", features = ["trace", "grpc-tonic"] } 49opentelemetry_sdk = { version = "0.28", features = ["rt-tokio", "trace"] } 50 51# HTTP middleware 52tower-http = { version = "0.5", features = ["trace", "cors"] } 53tower = { version = "0.5", features = ["util"] } 54 55# ATProto (repo-engine) 56# atrium-api = "0.22" 57# atrium-repo = "0.1" 58 59# Crypto (crypto) 60# rsky-crypto = "0.2" 61p256 = { version = "0.13", features = ["ecdsa"] } 62aes-gcm = "0.10" 63multibase = "0.9" 64rand_core = { version = "0.6", features = ["getrandom"] } 65base64 = "0.21" 66ciborium = "0.2" 67data-encoding = "2" 68sha2 = "0.10" 69zeroize = "1" 70subtle = "2" 71uuid = { version = "1", features = ["v4"] } 72 73# ATProto handle resolution — DNS TXT fallback (relay) 74hickory-resolver = { version = "0.25", features = ["tokio", "system-config"] } 75 76# Testing 77tempfile = "3" 78 79# Intra-workspace 80common = { path = "crates/common" } 81crypto = { path = "crates/crypto" } 82repo-engine = { path = "crates/repo-engine" }