Nagrik Dwar: a grievance platform that closed the loop between citizens and the people who fix things
A municipal corporation received thousands of complaints a month — potholes, garbage, streetlights, water — through phone, paper and social media, and could not tell a citizen what had happened to any of them. We built Nagrik Dwar: a citizen app and WhatsApp channel, AI categorisation in Hindi and English, field-staff resolution with photo proof, and ward-level dashboards — 25 features built to be used by everyone in the city.

Complaints went in. Nothing came out.
The municipal commissioner described the existing grievance system as "a black hole with a phone number". Complaints arrived by helpline, paper letters at ward offices, social media posts and walk-ins. Each was written into a register or a spreadsheet, forwarded to a department by email or phone, and then — from the citizen's point of view — disappeared.
Field staff often did fix the problem, but nobody recorded it. The same pothole would be reported ten times by ten citizens, creating ten records, and the corporation could not tell which complaints were resolved, which were duplicates and which were genuinely stuck.
“Citizens don't lose faith because we are slow. They lose faith because we are silent.”
Listening to both ends
We spent time at the helpline, at two ward offices and with field staff from sanitation, roads and electrical departments. Citizens wanted three things: an easy way to report, proof that someone had seen it, and proof that it was fixed. Field staff wanted fewer phone calls from supervisors asking for updates and a clear list of what to do each day.
Accessibility was non-negotiable. A large share of citizens would report in Hindi, many through WhatsApp rather than an app, and some by voice note. Every channel had to feed the same system.
- Every complaint acknowledged instantly with a tracking number
- Report by app, WhatsApp, helpline or ward office — one system
- Resolution requires a photo from the field, not just a status change
- Hindi first, accessible for citizens with low literacy

Getting each complaint to the right person
The heart of Nagrik Dwar is routing. Each complaint is located on the map, categorised by an AI model trained on past complaints in Hindi and English, checked for duplicates nearby, and assigned to the right department and ward officer automatically. Officers can correct the category, and every correction improves the model.
Duplicates are merged rather than deleted: citizens who reported the same pothole all follow one complaint and all receive the resolution photo.
The team
Public-scale software needs strong QA and accessibility work, so both were staffed from the start.
Corporation stakeholder meetings, approvals and phased launch.
Accessible Hindi-first citizen experience and field app.
Citizen app and field staff app.
Dashboards and department consoles.
Routing engine, WhatsApp channel and geospatial services.
Complaint categorisation and duplicate detection.
Load testing and accessibility audits.
9 people in total, working as one team.
Decisions agreed with the corporation
Government projects involve formal approvals; each decision below was minuted with the corporation's IT cell.
App only or every channel?
- Citizen app only
- App, WhatsApp, helpline and ward office feeding one system
Our call: App, WhatsApp, helpline and ward office feeding one system. Many citizens would never install an app. Meeting them on WhatsApp and at ward offices made the system genuinely public.
How is a complaint marked resolved?
- Status change by staff
- Resolution photo from the field, with citizen feedback
Our call: Resolution photo from the field, with citizen feedback. Photo proof prevented complaints being closed without work being done, and gave citizens visible evidence.
Delete or merge duplicates?
- Delete duplicate complaints
- Merge them and notify every reporter
Our call: Merge them and notify every reporter. Every citizen who reported the issue deserved to hear it was fixed. Merging also showed which problems affected the most people.
Where to host?
- Commercial cloud of our choice
- Government-empanelled cloud
Our call: Government-empanelled cloud. Government data rules required an empanelled provider; the architecture was designed for it from the start.
The 25 features
Everything that shipped, for citizens, field staff and administrators.
- 01Photo complaint with map pin
Report in seconds with location detected automatically.
- 02WhatsApp reporting
Report by message, photo or voice note on WhatsApp.
- 03Tracking number and status
Instant acknowledgement and live status.
- 04Resolution photo
See the 'after' photo when the issue is fixed.
- 05Feedback and reopen
Rate the resolution or reopen if it is not fixed.
- 06Hindi and English
Full bilingual interface with large text options.
- 07AI categorisation
Complaints classified by type in Hindi or English.
- 08Automatic assignment
Routed by ward, department and category.
- 09Duplicate detection
Nearby similar complaints merged.
- 10SLA timers
Resolution deadlines by category with escalation.
- 11Officer corrections
Fix category or assignment; the model learns.
- 12Daily task map
Assigned complaints on a map with routes.
- 13Photo resolution
Resolve with an after photo and location.
- 14Offline mode
Work without signal; sync later.
- 15Material and reason codes
Record why a complaint could not be resolved yet.
- 16Ward heatmap
Complaint density and resolution rates by ward.
- 17Department performance
Pending, resolved and breached SLAs by department.
- 18Commissioner review pack
Weekly summary for review meetings.
- 19Helpline and ward-office entry
Staff log complaints received offline.
- 20Public transparency page
City-wide resolution statistics for citizens.
- 21Role-based access
Permissions for helpline, officers, heads and commissioner.
- 22Audit trail
Every assignment, change and resolution recorded.
- 23Data export
Reports and raw data export for the corporation.
- 24Accessibility compliance
Built and tested to government accessibility guidelines.
- 25Security audit readiness
Hardened configuration and audit documentation.

Launching in a city
We launched in four wards first, with the helpline and ward offices entering every complaint into Nagrik Dwar alongside citizens using the app and WhatsApp. The first weeks surfaced a backlog nobody had seen clearly before; the dashboard made it visible, and the commissioner used it in weekly review meetings with department heads.
City-wide launch followed, promoted through ward offices, local newspapers and QR codes on garbage vehicles.
- Weeks 1–3Discovery
Helpline, ward offices and field departments observed.
- Weeks 4–6Design
Citizen and field journeys tested in Hindi.
- Weeks 7–16Build
Channels, routing engine, field app and dashboards.
- Weeks 17–20Four-ward pilot
Backlog surfaced; weekly reviews started.
- Weeks 21–24City-wide launch
All wards with public awareness campaign.
What we learned
Proof of resolution builds trust. The single most-valued feature among citizens was the "after" photo.
Visibility creates accountability. Once ward-level delays were on a dashboard reviewed weekly, they started to shrink.
- React Native
- Next.js
- NestJS
- PostgreSQL with PostGIS
- Hindi and English text classification
- WhatsApp Business API
- Government-empanelled cloud

