This application predicts energy prices using machine learning models (XGBoost and LSTM) based on various factors like weather conditions, historical trends, and more.
- frontend: React TypeScript application with Tailwind CSS
- backend: FastAPI Python application with ML models
- dataset: Contains the dataset used for training models
- scripts: Utility scripts for data preprocessing and model training
This project is configured to run in GitHub Codespaces using Docker Compose. Follow these steps:
-
Open in Codespaces: Click the "Code" button on the GitHub repository and select "Open with Codespaces"
-
Start the Application: From the terminal, run:
docker-compose up --build
Alternatively, you can use:
docker-compose up --build
Or run the commands separately:
docker-compose build && docker-compose up
/
- Home endpoint/predict
- ML prediction endpoint/weather/uk
- UK weather data/solar
- Solar generation data/stats
- Current statistics/api/get-api-keys
- Get configured API keys/api/save-api-keys
- Save API keys/api/test-api-key
- Test API key validity
- Frontend: React, TypeScript, Vite, Tailwind CSS
- Backend: FastAPI, Python 3.10, XGBoost, TensorFlow (LSTM)
- Containerization: Docker, Docker Compose
To run this project locally without Docker:
-
Backend:
cd backend pip install -r requirements.txt uvicorn app.main:app --reload
-
Frontend:
cd frontend npm install npm run dev
This is a demonstration project. In production, you would need to set up proper environment variables, security measures, and more robust error handling.
Muhammad Usman Mateen