Disaster Alert is a Monitoring system for any disaster
๐ Disaster Alert
A Real-Time Disaster Monitoring and Early Warning System
๐ Overview
Disaster Alert is a comprehensive monitoring and early warning system designed to detect, track, and report disasters in real time. The platform enables communities, governments, and response agencies to quickly share information, assess risks, and coordinate timely responses to minimize loss of life and property.
The system is particularly relevant for disaster-prone regions and supports both connected and low-connectivity environments.
๐ฏ Objectives
Provide real-time disaster monitoring and reporting
Enable early warning and rapid response mechanisms
Enhance community participation in reporting incidents
Support decision-makers with reliable data and analytics
Strengthen coordination between stakeholders
๐จ Key Features
- ๐ก Real-Time Incident Reporting
Users can report disasters such as:
Floods
Fires
Conflict incidents
Disease outbreaks
Environmental hazards
Reports can include location, images, and descriptions
- ๐ Interactive Dashboard
Visual representation of incidents on a map interface
Filtering by:
Disaster type
Location
Severity
Time
- ๐ Alert & Notification System
Instant alerts via:
SMS
Mobile push notifications
Custom alert thresholds based on risk levels
- ๐ Data Analytics & Insights
Trend analysis for disaster patterns
Risk mapping and forecasting
Reports for decision-making and planning
- ๐ฑ Offline & Low Connectivity Support
Data capture in offline mode
Automatic sync when internet is available
- ๐๏ธ Multi-Stakeholder Integration
Connects:
Communities
NGOs
Government agencies
Emergency responders
๐๏ธ System Architecture
The system follows a modular architecture:
Frontend:
Web dashboard (React / Vue)
Mobile application (Android)
Backend:
RESTful API (Node.js / Django)
Authentication & role management
Database:
PostgreSQL / MySQL
GIS-enabled (PostGIS) for mapping
Infrastructure:
Cloud-based (AWS / Azure / GCP)
Scalable and secure
โ๏ธ Installation Prerequisites
Node.js (v18+) Python (3.11+) Git
Quick Start (Development)
git clone https://github.com/your-username/disaster-alert.git cd disaster-alert
npm run install:all
npm run migrate
npm run dev
Frontend will be available at http://localhost:5173
Backend API will be available at http://localhost:8000
Manual Setup
cd backend pip install -r requirements.txt python manage.py migrate python manage.py runserver
cd frontend npm install npm run dev
Environment Configuration The backend uses SQLite by default for development. The database file (db.sqlite3) is automatically created in the backend directory. ๐ User Roles
Admin
Manage users and system settings
View all reports and analytics
Field Reporter
Submit incident reports
Upload media
Responder
Receive alerts
Coordinate response
Public User
View alerts and updates
๐ Use Cases
Early warning systems in rural communities
Disaster response coordination centers
NGO and humanitarian operations
Government emergency management agencies
๐ Impact
Disaster Alert helps to:
Reduce disaster response time
Improve situational awareness
Empower communities to report incidents
Strengthen resilience and preparedness
๐ฎ Future Enhancements
AI-based disaster prediction
Integration with satellite and weather data
Voice-based reporting (local languages)
Integration with systems like community early warning platforms
๐ค Contribution
We welcome contributions from developers, researchers, and humanitarian organizations.
git checkout -b feature/new-feature
git commit -m "Add new feature"
git push origin feature/new-feature ๐ License
This project is licensed under the MIT License.
๐ฌ Contact
Project Lead: Wani Geoffrey Email: wanigeoffrey1@gmail.com
Location: Juba, South Sudan
The repository now includes a Django backend in backend/ with:
- REST API: Locations, Alerts, Reports
- Realtime stream: Server-Sent Events endpoint for live alerts
- Analytics: Simple aggregated summaries for dashboards
- Database: MySQL (recommended) with a SQLite dev fallback
cd backend
python -m venv .venv
.\.venv\Scripts\python -m pip install -r requirements.txt
copy .env.example .env
set DB_ENGINE=sqlite
.\.venv\Scripts\python manage.py migrate
.\.venv\Scripts\python manage.py runservercd backend
docker compose up -d
copy .env.example .env
set DB_ENGINE=mysql
.\.venv\Scripts\python manage.py migrate
.\.venv\Scripts\python manage.py runserver- Locations:
GET/POST /api/locations/ - Alerts:
GET/POST /api/alerts/,GET/PATCH /api/alerts/{id}/ - Live alerts (SSE):
GET /api/alerts/stream/?since=2026-01-01T00:00:00Z - Reports:
GET/POST /api/reports/ - Analytics summary:
GET /api/analytics/summary/?days=30 - Analytics (timeline):
GET /api/analytics/timeline/ - Analytics (map):
GET /api/analytics/map/ - Early warning:
GET /api/analytics/early-warning/
The repository includes a modern frontend under frontend/ with:
- User registration/login
- Incident data collection forms
- Dashboard with map + timeline + early warnings (filtered from early 2000 to today)
cd frontend
npm install
copy .env.example .env
npm run devDefault UI address: http://localhost:5173