[package] name = "ngit-grasp" version = "1.0.2" edition = "2021" authors = ["ngit-grasp contributors"] license = "MIT" description = "A GRASP (Git Relays Authorized via Signed-Nostr Proofs) implementation in Rust" repository = "https://gitworkshop.dev/ngit-grasp" [dependencies] # Async runtime tokio = { version = "1.35", features = ["full"] } # HTTP server (hyper for relay integration) hyper = { version = "1.4", features = ["full"] } hyper-util = { version = "0.1", features = ["tokio", "server", "http1", "http2"] } http-body-util = "0.1" # Nostr relay nostr-relay-builder = { git = "https://github.com/rust-nostr/nostr", rev = "4767ad13" } # Nostr nostr-sdk = { git = "https://github.com/rust-nostr/nostr", rev = "4767ad13" } nostr-lmdb = { git = "https://github.com/rust-nostr/nostr", rev = "4767ad13" } # Utilities futures-util = "0.3" base64 = "0.22" flate2 = "1.0" # Metrics prometheus = "0.13" dashmap = "5" lazy_static = "1.4" # Data structures indexmap = "2" # Random (for startup jitter) rand = "0.8" # Serialization serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" # Logging tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Configuration dotenvy = "0.15" clap = { version = "4.5", features = ["derive", "env"] } # Error handling anyhow = "1.0" # Async traits async-trait = "0.1" # Git (for future use) # git-http-backend = "0.3" [dev-dependencies] # Testing grasp-audit = { path = "grasp-audit" } tempfile = "3" reqwest = "0.12" [lib] name = "ngit_grasp" path = "src/lib.rs" [[bin]] name = "ngit-grasp" path = "src/main.rs" [workspace] members = [".", "grasp-audit"]