[package] name = "vapora-backend" version.workspace = true edition.workspace = true authors.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true [lib] name = "vapora_backend" path = "src/lib.rs" [[bin]] name = "vapora-backend" path = "src/main.rs" [dependencies] # Internal crates vapora-shared = { workspace = true } vapora-agents = { workspace = true } vapora-llm-router = { workspace = true } vapora-swarm = { workspace = true } vapora-tracking = { path = "../vapora-tracking" } vapora-knowledge-graph = { path = "../vapora-knowledge-graph" } vapora-workflow-engine = { workspace = true } # Secrets management secretumvault = { workspace = true } # Web framework axum = { workspace = true } tower = { workspace = true } tower-http = { workspace = true } # Async runtime tokio = { workspace = true } futures = { workspace = true } async-trait = { workspace = true } # Serialization serde = { workspace = true } serde_json = { workspace = true } toml = { workspace = true } serde_yaml = { workspace = true } # Error handling anyhow = { workspace = true } thiserror = { workspace = true } # HTTP http = { workspace = true } # Logging tracing = { workspace = true } tracing-subscriber = { workspace = true } # Database surrealdb = { workspace = true } sqlx = { workspace = true } # Message Queue async-nats = { workspace = true } # Authentication jsonwebtoken = { workspace = true } argon2 = { workspace = true } tower-sessions = { workspace = true } tower-cookies = { workspace = true } # Utilities uuid = { workspace = true } chrono = { workspace = true } dotenv = { workspace = true } once_cell = { workspace = true } regex = { workspace = true } # Configuration clap = { workspace = true } # Metrics prometheus = { workspace = true } lazy_static = { workspace = true } # TLS (native tokio-rustls) rustls = { workspace = true } rustls-pemfile = { workspace = true } [dev-dependencies] mockall = { workspace = true } axum-test = { workspace = true } wiremock = { workspace = true } tempfile = { workspace = true }