AI-powered Formula 1 analytics and race prediction web app.
- Race predictions - win probability for each driver using a Gradient Boosting model trained on FastF1 data
- H2H comparisons - head-to-head driver stats pulled live from FastF1 with an ML prediction card
- History - past predictions verified against real results
- Season calendar - 2026 F1 race schedule
Accurately predicted Antonelli (Mercedes) as the 2026 Miami GP winner.
Frontend
- React + Tailwind CSS (Vite)
Backend
- FastAPI (Python)
ML
- scikit-learn (Gradient Boosting + Random Forest)
- FastF1 (real F1 timing and results data)
docs/CONTEXT.md- project context and current architecture notesdocs/design.md- design system referencedocs/security_audit.md- latest security audit notes
cd frontend
npm install
npm run devRuns on http://localhost:5173
Recommended: Python 3.12.
cd backend
Remove-Item -Recurse -Force .\venv -ErrorAction SilentlyContinue
python -m venv venv
.\venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
python -m uvicorn app.main:app --reloadRuns on http://127.0.0.1:8000
Health check: http://127.0.0.1:8000/api/health
Run backend tests:
cd backend
.\venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python -m pytest testsFor the contact form, copy backend/.env.example to backend/.env and fill in the Resend/contact values. The H2H cache TTL can be adjusted with H2H_CACHE_TTL_SECONDS.
If PowerShell blocks the activation script, allow local scripts for your user:
Set-ExecutionPolicy -Scope CurrentUser RemoteSignedThen run:
.\venv\Scripts\Activate.ps1- Model improvements
- Deployment
MIT