Files
foxhunt/web-gateway/Cargo.toml
jgrusewski 77ad1530cd feat(web-gateway): scaffold Axum REST gateway with all route modules
New web-gateway crate with:
- JWT auth middleware with claims extraction
- REST routes proxying to gRPC: trading, risk, ML, training, backtesting,
  performance, config, and hyperparameter tuning
- Proto compilation from shared tli/proto definitions
- AppState with lazy gRPC channels and WebSocket broadcast
- Axum server with CORS, tracing, and graceful shutdown

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 00:18:18 +01:00

58 lines
1.2 KiB
TOML

[package]
name = "web-gateway"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
authors.workspace = true
license.workspace = true
description = "REST + WebSocket gateway for Foxhunt web dashboard"
[[bin]]
name = "web-gateway"
path = "src/main.rs"
[dependencies]
# HTTP server
axum = { workspace = true, features = ["ws"] }
tower.workspace = true
tower-http = { workspace = true, features = ["cors", "trace"] }
# gRPC client
tonic = { workspace = true, features = ["transport", "tls-ring", "tls-webpki-roots"] }
tonic-prost.workspace = true
prost.workspace = true
# Async runtime
tokio.workspace = true
tokio-stream.workspace = true
futures-util.workspace = true
# Serialization
serde = { workspace = true, features = ["derive"] }
serde_json.workspace = true
# Auth
jsonwebtoken.workspace = true
# Error handling & logging
anyhow.workspace = true
thiserror.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
# Shared types
common.workspace = true
# Time and IDs
chrono.workspace = true
uuid.workspace = true
[build-dependencies]
tonic-prost-build.workspace = true
[dev-dependencies]
tokio-test.workspace = true
[lints]
workspace = true