3da1b4242c
Feature 1.2: Python FastAPI microservice wrapping nba_api - GET /stats/season-avg, /stats/last-n, /stats/splits, /players/search - Redis caching (24hr/1hr/6hr/7day), 0.6s rate limiting, PRA derived stat - 27 Python tests passing Feature 1.4: Complete Supabase database schema - 6 tables: users, picks, scan_sessions, bets, outcomes, performance - RLS enabled on all tables with auth.uid() policies - 3 triggers: auto-create user, updated_at, scan count reset - 37 schema validation tests passing - Migration SQL ready, pending manual apply (WSL2 DNS blocker) Total: 92 tests (65 Node.js + 27 Python), all passing Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
31 lines
765 B
Bash
Executable File
31 lines
765 B
Bash
Executable File
#!/bin/bash
|
|
# Start both BetonBLK services
|
|
# Usage: ./scripts/start.sh
|
|
|
|
set -e
|
|
|
|
echo "[BetonBLK] Starting services..."
|
|
|
|
# Start Python NBA stats service (port 8000)
|
|
echo "[BetonBLK] Starting NBA stats service on port 8000..."
|
|
cd nba-service
|
|
source venv/bin/activate
|
|
uvicorn app.main:app --host 0.0.0.0 --port 8000 &
|
|
NBA_PID=$!
|
|
cd ..
|
|
|
|
# Start Node.js API server (port 3000)
|
|
echo "[BetonBLK] Starting Node API server on port 3000..."
|
|
node src/server.js &
|
|
NODE_PID=$!
|
|
|
|
echo "[BetonBLK] Services running:"
|
|
echo " Node API: http://localhost:3000 (PID: $NODE_PID)"
|
|
echo " NBA Stats: http://localhost:8000 (PID: $NBA_PID)"
|
|
echo ""
|
|
echo "Press Ctrl+C to stop all services."
|
|
|
|
trap "kill $NBA_PID $NODE_PID 2>/dev/null; echo '[BetonBLK] Services stopped.'" EXIT
|
|
|
|
wait
|