flask>=3.0.0
flask-cors>=4.0.0
flask-sock>=0.7.0
simple-websocket>=1.0.0
# .env support for `python -m backend.app` / gunicorn (optional at runtime)
python-dotenv>=1.0.0
numpy>=1.26.0
# Compile mode (Runtime.run mode=compile|auto) — required for AXIS Execution mode
numba>=0.59.0
matplotlib>=3.8.0
gunicorn>=21.0.0
# WebSocket workers (docker api default): gevent + gevent-websocket speak the
# flask-sock routes (/ws/run, /ws/live, /datafeed/watch). Sync/gthread
# workers cannot upgrade, so AXIS falls back to REST there.
gevent>=24.0.0
gevent-websocket>=0.10.1
# Optional key-store backend (compose profile redis / REDIS_URL)
redis>=5.0.0
# Exchange datafeed (/datafeed/*, /data/series/fetch, /data/session tick) — CCXT
ccxt>=4.0.0
