FireCast is a fire prediction and forecasting web app that uses satellite images to show areas likely to burn and provides forecasts to assist with early alerts and planning.
Production Environment:
- Live Demo: https://firecast.up.railway.app
- Satellite-Based Fire Prediction: Use satellite imagery to identify zones at high risk of wildfires.
- Weather Forecasting: Provides short and long term weather forecasts to support fire planning and response.
- Interactive Maps: Allows users zoom, and select regions to view predictions and historical data.
- Frontend: React, Vite, Tailwind CSS, D3.js, MapTiler SDK, OpenLayers.
- Backend (Express): Node.js, Express 5
- Backend (Python): Flask, TensorFlow, NumPy, Matplotlib, SciPy, OpenCV, h5py, Gunicorn, Waitress
- Deployment & Hosting: Railway
- Node.js ≥ 16.0.0
- Python ≥ 3.8
- PostgreSQL
- Visual Crossing API key
- Open Weather API key
-
Clone the repository
git clone [email protected]:Etativel/FireCast.git cd FireCast
-
Setup Express Backend
cd backend/express npm install cp .env.example .env # Edit .env and add the following keys: # VISUAL_CROSSING_API # OPEN_WEATHER_API npx prisma migrate dev --name init node index.js
-
Setup Python Backend
cd ../../backend/python python -m venv venv source venv/bin/activate pip install -r requirements.txt # Run with Gunicorn (production): gunicorn app:app --workers 4 --bind 0.0.0.0:5000 # Or with Waitress (Windows): waitress-serve --call "app:create_app"
-
Setup Frontend
cd ../../frontend npm install npm run dev
Express Backend (backend/express/.env):
VISUAL_CROSSING_API
= API key for Visual Crossing weather serviceOPEN_WEATHER_API
= API key for OpenWeatherMAPTILER_API
= API key for map
Feel free to submit a Pull Request.
- Fork the repository
- Create a branch: git checkout -b feature/my-feature
- Commit your changes: git commit -m 'Add some feature'
- Push to your branch: git push origin feature/my-feature
- Open a Pull Request
- Maintainer: Farhan
- Email: [email protected]
- GitHub: https://github.com/Etativel