NBA players and teams tracked like a financial market: stat tickers, sentiment gauges, live win probability, and betting-style odds.
- Python 3.10+
- Node 18+
macOS/Linux:
cd apps/api
python3 -m venv venv
./venv/bin/pip install -r requirements.txt
cp .env.example .env
./venv/bin/uvicorn app.main:app --reload --port 8000Windows (PowerShell):
cd apps/api
python -m venv venv
.\venv\Scripts\pip install -r requirements.txt
copy .env.example .env
.\venv\Scripts\uvicorn app.main:app --reload --port 8000Runs fine with no keys set, sentiment/odds just show no data until you add REDDIT_CLIENT_ID/SECRET and ODDS_API_KEY to .env.
Run once, from apps/api with the venv active:
./venv/bin/python -m app.seed.sync_league # macOS/Linux
.\venv\Scripts\python -m app.seed.sync_league # WindowsEverything else (sentiment, trades, injuries, odds, backtest results) fills in automatically once the API is running.
cd apps/web
npm install
npm run devVisit http://localhost:3000. The API is expected at http://localhost:8000.