This is a monorepo for a full-stack NBA fantasy basketball analytics and prediction platform. It features a React/TypeScript frontend and a FastAPI/Python backend, supporting advanced machine learning models for player projections, custom fantasy scoring, and interactive analytics.
Project-Mono-Repo/
├── backend/ # FastAPI backend, ML models, and data
│ ├── api_service.py
│ ├── CSVs/ # Player, boxscore, and model data (CSV)
│ ├── Models/ # Pre-trained (pre-trained models)
│ ├── Output/ # Model prediction CSVs
│ ├── TrainingAndTesting/ # Jupyter notebooks for ML models
│ ├── requirements.txt
│ └── README.md # Backend-specific setup & docs
├── frontend/ # React + TypeScript + Tailwind CSS dashboard
│ ├── src/
│ ├── package.json
│ └── README.md # Frontend-specific setup & docs
├── ploty-dash-frontend/ # (Optional) Plotly Dash analytics (Python)
├── README.md # (This file) Project overview & quick start
- Python 3.8+
- Node.js 18+
- npm
- (Recommended) virtualenv or conda for Python
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn api_service:app --reload --port 8001The API will be available at http://localhost:8001
cd frontend
npm install
npm run devThe dashboard will be available at http://localhost:5173
- backend/: All Python code, data, and ML models. See
backend/README.mdfor details. - frontend/: All React/TypeScript code for the dashboard. See
frontend/README.mdfor details. - ploty-dash-frontend/: (Optional) Python Plotly Dash analytics app.
- Place all CSV data in
backend/CSVs/. - Place all model prediction CSVs in
backend/Output/. - See backend/README.md for details on supported files and formats.
- Fork the repository
- Create a feature branch
- Make your changes and test
- Submit a pull request
MIT
See backend/README.md and frontend/README.md for detailed setup, usage, and development instructions for each part of the project.