INDRA
Intelligent National Disaster & Weather Platform
Turns fragmented citizen reports, official warnings and weather observations into verified, explainable weather events for India’s emergency operations centres. I build the backend.
01 Cluster · DBSCAN + H3
02 Verification receipt
- Weather station 20%0.00
- Official warning 10%0.00
- Report density 20%0.55
- Spatial coherence 15%1.00
- Computer vision 15%offline
- Source reliability 15%0.60
- Anomaly detection 5%offline
online = factors that reported confidence = Σ(w × s) / Σ w over online coverage = Σ w over online
- My part
- Core platform · layers 1–3, 5–8a
- Team
- Team Sixth Sense · 4
- Problem
- SIH26069 · Weather Big Data Analytics
- Stack
- FastAPI · PostGIS · Redpanda
01 Problem
When a cloudburst or flash flood hits, a district emergency operations centre gets hundreds of signals at once — citizen reports, official bulletins, weather observations, posts, headlines. Many describe the same incident; some are copies; some are wrong. INDRA answers “what is actually happening, where, how bad, and how sure are we?” as data.
02 Approach
Ingest without losing anything
REST intake with a transactional outbox into Redpanda (Kafka API), scheduled pollers for NDMA SACHET warnings, Open-Meteo, airport METAR, Mastodon and Google News, a dead-letter queue, and a raw archive in an S3-compatible data lake.
Clean and understand
India-bounds validation, geocoding over a 737-district gazetteer, H3 indexing, rule-based cleaning in English, Hindi and Hinglish, a hazard tagger for 16 event types, and flags for misleading and coordinated text.
Cluster in space and time
Great-circle DBSCAN per hazard family, concave-hull event boundaries and multi-resolution H3 heatmaps — one event per incident, not one per report.
Verify against independent evidence
Each cluster is checked against airport METAR, modelled weather and official IMD/CWC/SDMA warnings. A deterministic seven-factor Verification Receipt yields CORROBORATED, CONTRADICTED or UNCONFIRMED; absent signals are marked offline, never invented; late evidence re-scores open events.
Govern and deliver
A human review queue with time-limited claims, role-based access control on every write, a SHA-256 hash-chained audit ledger, REST and WebSocket push to the command centre, and a health endpoint that checks every dependency.
03 Results
- Commits · #1 contributor
- 691
- Tests passing
- 1,788
- Hazard types
- 16
- Factor verification receipt
- 7
- Core platform (phases 1–5) feature-complete, merged and deployed to the team server.
- Deterministic scoring: the same cluster and evidence produce a byte-identical receipt, and a test pins it.
- Recorded verification demo (27 Sep 2026), labelled test reports scored against that day’s real observations: a 47 °C heatwave claim beside Dehradun airport, which measured 20 °C → 0.437, CONTRADICTED, routed to human review; flood reports in Uttarkashi under an Extreme SDMA rain warning → 0.712, CORROBORATED.
- 1,788 tests passing in the latest recorded run.
- #1 contributor to the repository — 691 commits over the last three months.
Figures from the INDRA README (run of 27 Sep 2026) and GitHub contributor insights.
04 Stack
- Python
- FastAPI
- PostGIS
- Redpanda (Kafka)
- Redis
- H3
- DBSCAN
- SeaweedFS (S3)
- Docker