Add project structure and roadmap documentation

- Created `project-structure.md` to outline the directory layout, crate dependencies, design principles, module guidelines, and naming conventions for the NxMesh codebase.
- Introduced `roadmap.md` detailing the development phases, milestones, tasks, deliverables, and resource requirements for the NxMesh project, spanning from foundational setup to enterprise features.
This commit is contained in:
GW_MC
2026-03-03 04:13:31 +00:00
parent 39bd860c55
commit 43b2e44d95
11 changed files with 9293 additions and 7 deletions

View File

@@ -1,13 +1,80 @@
[workspace]
members = [
"crates/nxmesh-core",
"crates/nxmesh-proto",
"crates/nxmesh-master",
"crates/nxmesh-agent",
"crates/nxmesh-cli",
"migrations/sea-orm",
]
resolver = "3"
[workspace.lints.clippy]
module_inception = "allow"
[workspace.package]
version = "0.1.0"
edition = "2021"
authors = ["NxMesh Team"]
license = "GNU General Public License v3.0"
repository = "https://github.com/nxmesh/nxmesh"
rust-version = "1.80"
[workspace.dependencies]
sea-orm = "2.0.0-rc"
sea-orm-cli = "2.0.0-rc"
# Core dependencies
tokio = { version = "1", features = ["full"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "1"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
# Web framework
axum = "0.7"
tower = "0.4"
tower-http = { version = "0.5", features = ["trace", "cors", "fs"] }
# gRPC
tonic = "0.11"
prost = "0.12"
# 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.8"
config = "0.14"
# HTTP client
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "json"] }
# Crypto
sha2 = "0.10"
hex = "0.4"
argon2 = "0.5"
jsonwebtoken = "9"
# Validation
validator = { version = "0.18", features = ["derive"] }
# Time
chrono = { version = "0.4", features = ["serde"] }
# UUID
uuid = { version = "1", features = ["v4", "serde"] }
# Templating
handlebars = "5"
# CLI
clap = { version = "4", features = ["derive"] }
# Testing
tokio-test = "0.4"
mockall = "0.12"
# NxMesh internal
nxmesh-core = { path = "crates/nxmesh-core" }
nxmesh-proto = { path = "crates/nxmesh-proto" }