The Climate Frontend is a sophisticated web application developed in collaboration with IIT Bombay for the Mumbai Flood project. It provides real-time flood monitoring, rainfall forecasting, and crowd-sourced flood reporting capabilities for Mumbai city.
- Real-time rainfall data visualization
- 3-day rainfall forecasts
- Interactive station-wise data display
- Historical rainfall patterns
- Live water level monitoring from 9 sensors across Mumbai
- Visual alerts for critical water levels
- Historical water level data analysis
- Sensor location mapping
- User-friendly flood reporting interface
- Real-time flood location mapping
- Water depth indicators
- Community-driven flood alerts
- Optimized for all device sizes
- Touch-friendly interface
- Smooth navigation
- Adaptive layouts
- Frontend Framework: React.js
- Styling: Tailwind CSS
- Mapping: Leaflet
- State Management: React Context
- Data Visualization: Chart.js
- API Integration: Axios
- Node.js (v14 or higher)
- npm (v6 or higher)
- Git
- Clone the repository:
git clone https://github.com/Mumbai-Flood/Climate-Frontend.git
- Navigate to project directory:
cd Climate-Frontend
- Install dependencies:
npm install
- Create environment file:
cp .env.example .env
- Start development server:
npm start
- Open http://localhost:3000 in your browser
Climate-Frontend/
├── src/
│ ├── components/ # Reusable UI components
│ │ ├── home/ # Home page components
│ │ ├── layout/ # Layout components
│ │ └── common/ # Shared components
│ ├── pages/ # Page components
│ ├── utils/ # Utility functions
│ ├── styles/ # Global styles
│ └── App.js # Root component
├── public/ # Static assets
└── docs/ # Documentation
We welcome contributions! Please follow these guidelines:
- 🍴 Fork the repository
- 🌿 Create a feature branch:
git checkout -b feature/your-feature-name
- 💻 Make your changes
- ✅ Run tests:
npm test
- 📝 Commit with clear messages:
git commit -m "feat: add new feature"
- 🚀 Push your changes:
git push origin feature/your-feature-name
- 🔄 Create a Pull Request
- Follow React best practices
- Use Tailwind CSS for styling
- Maintain mobile-first approach
- Write clean, documented code
- Follow semantic versioning
The application integrates with multiple APIs:
- Rainfall data API
- Water level sensor API
- Crowd-sourced data API
- Weather forecast API
- Lazy loading of components
- Image optimization
- Code splitting
- Caching strategies
- Bundle size optimization
This project is licensed under the MIT License. See the LICENSE file for details.
- 📧 Email: [email protected]
- 🌐 Website: mumbaiflood.in
- 🐛 Issues: GitHub Issues
- IIT Bombay research team
- Municipal Corporation of Greater Mumbai (MCGM)
- All contributors and community members
Made with ❤️ by the Climate Studies IIT Bombay