[workspace] members = [ "crates/nxmesh-core", "crates/nxmesh-proto", "apps/nxmesh-master", "apps/nxmesh-agent", "crates/migration", ] resolver = "3" [workspace.package] repository = "https://gitea.gwmc.dev/GW_MC/NxMesh.git" version = "0.1.0" license = "GNU General Public License v3.0" edition = "2024" rust-version = "1.93.1" authors = ["NxMesh Team"] [workspace.lints.clippy] module_inception = "allow" [workspace.dependencies] # Core dependencies tokio = { version = "1", features = ["full"] } tokio-stream = "0.1" serde = { version = "1", features = ["derive"] } serde_json = "1" thiserror = "2.0" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] } # Web framework axum = "0.8" tower = "0.5" tower-http = { version = "0.6.8", features = ["trace", "cors", "fs"] } # gRPC tonic = "0.14" prost = "0.14" # Database sea-orm = { version = "2.0.0-rc", features = [ "sqlx-postgres", "runtime-tokio-native-tls", ] } sea-orm-migration = "2.0.0-rc" # Async async-trait = "0.1" futures = "0.3" # Configuration toml = "0.9" config = "0.15" # HTTP client reqwest = { version = "0.13.2", default-features = false, features = ["json"] } # Crypto sha2 = "0.10" hex = "0.4" argon2 = "0.5" jsonwebtoken = "10.3" # Validation validator = { version = "0.20", features = ["derive"] } # Time chrono = { version = "0.4", features = ["serde"] } # UUID uuid = { version = "1", features = ["v4", "serde"] } # Templating handlebars = "6.4" # CLI clap = { version = "4", features = ["derive"] } # Testing tokio-test = "0.4" mockall = "0.14" # NxMesh internal nxmesh-core = { path = "crates/nxmesh-core" } nxmesh-proto = { path = "crates/nxmesh-proto" } nxmesh-migration = { path = "crates/migration" }