REACH
April 22, 2026 · View on GitHub
REACH
Real-time Emergency Alert Collection Hub
An AI-powered warning system to bridge official disaster forecasts and the community in Pakistan.
The Problem
Pakistan faces a critical disconnect in its disaster management infrastructure. While agencies like NDMA and PMD generate vital data, the "last mile" of communication is broken.
|
|
|
The Solution
REACH is an automated pipeline that ingests raw government data and transforms it into precision-targeted, actionable alerts. We treat disaster alerts as spatial data problems, not just text problems.
How it works
- Ingestion: Scrapers check bulletins (NDMA, NEOC, PMD) every 10 minutes for updates.
- Normalization: AI processes fetched documents in under 30 seconds to extract severity, timeline, description, etc. and convert it to a CAP (Common Alerting Protocol)-inspired schema.
- Geocoding: A custom service resolves location names to polygons. It handles complex directional variants (e.g., "North Khyber Pakhtunkhwa") using grid intersection logic over administrative boundaries.
- Distribution: Normalized data is stored in our database and served via web app for visualization and filtering.
Tech Stack
Our architecture is built for speed, resilience, and geospatial accuracy.
| Component | Technology | Description |
|---|---|---|
| Frontend | React, TypeScript, and Mapbox for web app. | |
| Services | Python microservices handling business logic and scraping. | |
| Backend and Database | Supabase for storing alerts, geometries, cron jobs and message queues. | |
| Document Processing | Gemini-3-Flash for high-speed inference for document parsing and entity extraction. | |
| Agent | LangGraph, ECharts and Mistral for orchestration, graphing and inference respectively. |
Visuals
| Alert Details | Analytics/QA Agent |
|---|---|
![]() | ![]() |
| User Guide | Searching/Filtering |
![]() | ![]() |
Roadmap
- Scrapers: Automated bots hitting NDMA, NEOC, and PMD public sources on a 10-minute cron
- AI Pipeline: Document processing pipeline achieving latency of under 1 minute per report using Gemini 3 Flash
- Spatial Engine: Heuristic geocoder capable of parsing admin regions and directional descriptors into polygons
- Web Dashboard: A responsive React application for searching alerts, filtering by severity/date, and visualizing risk zones on an interactive map
- Performance: Optimizing database and backend for better performance
- UX Polish: Refining the dashboard based on early user feedback
- Analytics Agent: A text-to-SQL agent capable of fetching data for answering questions, analyzing trends and producing charts
- Deduplication: Logic to merge overlapping reports from different agencies into a single "Source of Truth" event
- Alerts: Notifications for user apps based on their GPS location
- Mobile Apps: Apps for Android and iOS to get information to all users conveniently
- Advanced Geocoding: Improving the heuristic engine to resolve roadways, hydrology (rivers/dams), and bridges
- Data Expansion: Integrating more agencies, news/social media (validated) and international weather APIs
Acknowledgements
- NDMA, NEOC, and PMD for their tireless work in disaster monitoring
- The open-source community for incredible tools and libraries
- Render, Modal, Supabase and Netlify for allowing us to host our app's services for free
- Communities affected by the 2025 floods - this is for you
And the project for featuring us.
Built with for a safer Pakistan.



