Inspiration We've all seen potholes that stay for months, garbage piles nobody clears, and streetlights that stay broken for years. In India, filing a civic complaint means navigating government portals with 15-field forms, captchas, OTPs, and ward numbers. Most citizens give up halfway. Those who finish wait two months and hear nothing. Meanwhile municipal offices drown in thousands of unsorted complaints daily with no prioritisation, no duplicate detection, and no SLA tracking. Critical issues get buried. NGOs willing to help have zero access to structured ground-level data. We built AreaPulse because we believe reporting a broken road should be as easy as taking a photo — and fixing it should be just as fast. What it does AreaPulse is an AI-powered civic intelligence platform connecting three stakeholders on one live map: citizens, government officers, and NGOs. Citizens report issues in three ways:
AR Camera — point at a pothole or garbage pile, AI detects and classifies it, GPS auto-captures, submitted in under 5 seconds. One tap. No form. WhatsApp Bot — send a photo to our Twilio-powered WhatsApp number. AI reads the image, classifies the issue, extracts location. No app install, no account, works on any phone. Map Tap — tap a location on the live map, upload a photo, submit. AI handles everything in the background. Under 30 seconds.
AI Pipeline processes every report through Groq Llama-4-Scout 17B vision model — auto-classifying across 10 categories (pothole, water, sewage, electricity, streetlight, garbage, traffic, noise, tree, other), scoring severity (high/medium/low), filtering spam, detecting duplicates within 50m radius using Haversine formula, and auto-routing to the correct government department (PWD, MCD, Jal Board, BSES, DISCOM, Traffic Police). Government Dashboard gives officers a prioritised queue with live SLA countdown timers (24hrs for sewage, 48hrs for water, 168hrs for potholes), auto-escalation on SLA breach, crowd escalation at 25+ upvotes, and one-click status updates. NGO Dashboard shows filtered civic data by focus area and geography so organisations can identify where their intervention creates the highest impact. WhatsApp Notifications via Twilio auto-ping citizens whenever their issue is acknowledged, escalated, or resolved. How we built it
Backend: Python + Flask + Gunicorn with Jinja2 templating AI Engine: Groq Llama-4-Scout 17B as primary vision + LLM model, Google Gemini as fallback Database: Neon PostgreSQL (primary, psycopg3 + connection pooling) + Firebase Firestore (secondary, 5-min TTL read cache) Frontend: Vanilla JavaScript + Leaflet.js + MapTiler satellite hybrid tiles AR Camera: Separate deployed service with real-time computer vision WhatsApp: Twilio WhatsApp Business API for inbound reporting and outbound notifications Email: Resend API for automated dispatch Auth: Google OAuth 2.0 + Firebase Auth + Flask Sessions Deployment: Render (continuous deploy from GitHub) + UptimeRobot monitoring Seed Data: 141 issues across 36 Delhi neighbourhoods covering all 10 categories
Challenges we ran into
Firebase quota exhaustion — free tier ran out within hours during testing. We engineered a 5-minute TTL read cache that reduced daily reads from 2,880 to 288, added graceful 429 handling that serves from in-memory seed data and queues writes in background threads. Duplicate detection at scale — calculating Haversine distance between every incoming report and existing issues was expensive. We bounded the search to a 7-day window and 50m radius to keep it fast. SLA system design — different issue categories need different deadlines. We mapped Indian municipal norms (24hrs sewage, 48hrs water, 168hrs potholes) and built countdown timers that auto-escalate on breach without manual intervention. WhatsApp EXIF extraction — extracting GPS from EXIF metadata of WhatsApp-compressed images required fallback logic since WhatsApp strips EXIF on some devices. AR camera latency — getting computer vision classification under 5 seconds on a mobile browser required optimising image compression before API calls. Render cold starts — free tier spins down after inactivity. UptimeRobot pinging both services every 5 minutes solved this.
Accomplishments that we're proud of
A citizen can report a civic issue in under 5 seconds with zero forms, zero typing, zero app downloads Three input channels (AR Camera, WhatsApp Bot, Map Tap) covering every user — from rural citizens with basic phones to urban smartphone users Fully automated AI pipeline — classification, severity scoring, spam filtering, duplicate merging, department routing — no human in the loop Live SLA timers with auto-escalation that actually hold government accountable 141 seed issues across 36 Delhi areas for a realistic demo experience Dual database architecture that gracefully handles quota limits without any downtime Built and deployed end-to-end in a hackathon timeframe — both main app and AR scanner are live on Render right now
What we learned
Reducing user friction is more valuable than adding features. Cutting a 15-field form to one tap changed everything. Database quota management on free tiers is a real engineering problem. Caching and fallback strategies matter as much as core logic. AI vision models like Groq Llama-4-Scout can reliably classify civic infrastructure issues from photos — the accuracy surprised us. Designing for three different stakeholders on one platform requires careful UX separation without data duplication. WhatsApp as an input channel is massively underutilised — it reaches users that no website or app ever will.
What's next for AreaPulse
Predictive hotspot detection — AI identifies areas likely to develop issues before they're reported, using historical patterns and weather data Multilingual support — Hindi, Tamil, Bengali, Marathi voice and text input for true rural accessibility Integration with government APIs — direct connection to CPGRAMS, Swachhata, and state municipal portals for automatic official complaint filing Citizen reputation system — reward consistent reporters with verification badges and priority routing Offline-first mobile app — queue reports when there's no connectivity, sync automatically when back online Pan-India expansion — extend beyond Delhi's 36 areas to cover all Indian cities with configurable municipal norms per state
Log in or sign up for Devpost to join the conversation.