Rewrite 7 crate READMEs to reflect current architecture: correct model types (DQN/PPO/TFT/Mamba2), AtomicKillSwitch, real EnsembleConfig source from ml, actual data crate purpose, web-dashboard project details, ml_training_service ports. Fix 5 api_gateway/TLI docs: strip swarm agent framing, update service endpoints to api_gateway:50050, remove deleted dashboard references and hardcoded paths. Add missing web-gateway/README.md documenting 24 REST endpoints, WebSocket support, JWT auth, and 3-tier rate limiting. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
web-dashboard
Foxhunt trading dashboard.
Stack
- React 19 + TypeScript
- Vite 7 (dev server and bundler)
- Tailwind CSS 4
- TradingView (lightweight-charts 5.1.0) + Recharts
- Zustand (state) + React Query (server state, staleTime 10s, refetchInterval 15s)
Pages
- Trading -- Live positions, orders, market data charts
- Risk -- VaR, drawdown, portfolio exposure
- ML -- Model status, training metrics, predictions
- Performance -- PnL, Sharpe, execution quality
- Backtesting -- Strategy replay configuration and results
- Config -- System settings, strategy parameters
Auth
Login page with JWT authentication. ProtectedRoute guards on all pages. ErrorBoundary on every route. 401 responses trigger automatic logout.
Development
npm install
npm run dev
Dev server runs on localhost:5173 and proxies API requests to web-gateway at :3000.
Build
npm run build
Production builds disable sourcemaps and use manual chunk splitting (vendor, charts, query).
Project Structure
src/
pages/ -- Page components (Trading, Risk, ML, etc.)
components/ -- Shared UI components, charts, tables
hooks/ -- React Query hooks, WebSocket hooks
stores/ -- Zustand stores
api/ -- API client, auth helpers
types/ -- TypeScript type definitions