Submission for the ChatGPT Build What Moves India Challenge
Developed by: Swarnim Tiwari
Live Demo: [https://casefile-india.vercel.app/] && [https://casefile-bharat.vercel.app/]
In municipal administration across India, public grievances disappear into opaque bureaucratic back offices. A citizen files a complaint about a broken water pipeline, a hazardous pothole, or failed streetlights and it vanishes.
Status fields like "In Progress" tell them nothing.
- Which desk holds the file right now?
- Which officer is responsible?
- What stage of review is it at?
- What happens if no one acts?
The core Indian civic question remains unanswered:
"मेरा मामला किसके पास है?" Who owns my case right now?
CASEFILE is a citizen side civic docket system. It is not a government portal replacement. It is a structured, living record that travels alongside a civic complaint from filing to resolution answering the questions that India's existing grievance systems do not.
Every CASEFILE docket contains:
- The citizen's original account, verbatim
- A 4 stage wayfinding map showing exactly where the case is
- A named responsibility chain from citizen to executing officer
- A timestamped case journey of every action taken
- An SLA response window tracking days remaining
- An evidence log that persists across office handoffs
Two distinct entry points with role specific views and actions.
Citizen Portal Swarnim Tiwari (Ward Resident)
- File new civic case dockets
- Track case progress through 4 governance stages
- View the named responsibility chain
- Co-sign other citizens' cases
- Flag delays and ping the assigned officer
- Upload photographic evidence at intake
- Access the WhatsApp Gateway intake channel
Officer Portal Meera Joshi (Ward 04 Executive Officer)
- View the full municipal case queue with urgency indicators
- Advance cases through governance stages with one click
- Mark dockets as fully resolved
- See dynamic dashboard metrics: urgent count, pending dispatch, ward performance score
A 4 stage visual progress tracker built into every docket:
Logged → Desk Triage → Inspection → Resolved
Replaces meaningless status strings with a legible governance journey. Each completed stage shows a checkmark. The active stage is highlighted. The path forward is always visible.
Every case displays the exact named handoff chain:
Citizen Logged — Swarnim Tiwari
↓
Desk Review — Meera Joshi, Ward 04 Public Desk
↓
Field Inspection — Suresh Kumar, Junior Engineer (Water)
↓
Executive Sign-off — Rajesh Malhotra (Pending)
Timestamped. Named. Office-attributed. This is the signature interaction of CASEFILE.
Citizens can co-sign any active case that affects them. When a docket accumulates 20 or more verified co-signers, CASEFILE automatically:
- Elevates the case to Master Docket status
- Adds a priority escalation entry to the case journey
- Upgrades the SLA urgency classification
This turns fragmented individual complaints into a verified collective record. The systemic version of the problem India's grievance portals were never built to handle.
A simulated low bandwidth intake channel built for India's mobile first, low literacy civic context.
Citizens type any complaint in plain language inside a WhatsApp style chat interface. A bot processes the message and creates a full CASEFILE docket instantly. No portal account, no form or navigation required.
Designed for: elderly citizens, rural access points, shared mobile users and anyone for whom a web form is a barrier.
A public performance dashboard ranking all municipal wards by:
- On-time resolution percentage
- Average resolution days
- Active SLA breach count
- Overall benchmark score (0-100)
Gamifies accountability at the ward administration level. Creates competitive incentive for civic bodies without requiring regulatory enforcement.
Every case shows a visual progress bar against the statutory deadline. No alarmist red dashboards. A calm, factual display:
SLA Target: 5 Days 2 Days Remaining
████████████████░░░░
When a case resolves within the window, the record closes cleanly.
Citizens attach photographic evidence at intake. The image is stored with the case record via FileReader & displayed in the case detail view. Evidence stays with the case regardless of which office currently holds it.
Citizens select the responsible department directly. 10 municipal departments available, plus a custom department entry option:
- Water Works Department
- Public Works Department (Roads and Infrastructure)
- Sanitation and Waste Management
- Street Lighting and Electrical Infrastructure
- Urban Forestry and Parks Maintenance
- Stormwater Drainage and Flood Control
- Public Health and Vector Control
- Property Tax and Assessment Desk
- Building Plan Sanctions and Encroachment
- Traffic Safety and Signalization
| Property | Value |
|---|---|
| Framework | Vanilla JavaScript (ES6+) |
| External dependencies | Zero |
| Build step | None |
| Persistence | localStorage (session, cases, role) |
| Deployment | Vercel static hosting |
| Files required | index.html + app.js |
Two files. No bundler. No framework. No API keys. The entire product runs in a browser from a folder.
Method 1: Python
python -m http.server 8000
# Open http://localhost:8000Method 2: Node
npx serve .
# Open the printed URLMethod 3: Direct
Open index.html in Chrome. All features work except localStorage on some file:// origins — use a local server for the full experience.
- Create a GitHub repository
- Add
index.htmlandapp.jsto the root - Go to vercel.com and click New Project
- Import the repository
- Click Deploy — no configuration needed
Vercel auto detects the static site. The project will be live at your Vercel URL within 30 seconds.
Follow this sequence for the fullest demonstration:
- Open the app & you see the login screen
- Click Citizen Portal (Swarnim Tiwari)
- You are on the Cases Cabinet with 3 active cases
- Click Case #1001 (Water Works — Master Docket, 48 co-signers)
- Inspect: wayfinding at Step 3, responsibility chain, SLA bar, Master Docket badge
- Click Co-sign count increments, feedback appears inline, no popup
- Go back to cabinet
- Click 💬 WhatsApp Intake in the header
- Type any civic complaint in plain language and press Send
- A new case is created and confirmed in the chat
- Close the modal. The new case appears at the top of the cabinet
- Click + New Case and fill the form, attach a photo, submit
- The new case opens immediately with the photo in the evidence section
- Click Log Out
- Click Officer Portal (Meera Joshi)
- See the officer dashboard with dynamic urgent and pending counts
- Open any active case, see the Officer Desk Control panel
- Click Advance Step wayfinding updates live, toast confirms, no popup
- Click Mark Case Fully Resolved case closes, toast confirms
- Click Ward Leaderboard in the header. See ward performance rankings
- Refresh the page. Session and all case state are restored from localStorage
CASEFILE is designed to feel like a civic record, not a startup product.
- Parchment background (#F7F3EA) with navy ink (#193B59)
- Terracotta (#C05621) for urgency used functionally, never decoratively
- Gold (#D97706) for officer actions and escalation
- Bilingual English and Hindi labels throughout
- No gradients used as decoration
- No chat bubbles as the primary interface
- No excessive rounded corners or card grids
- No generic SaaS dashboard patterns
Every design decision is grounded in the civic context it represents.
All case records, officer names, ward identities and citizen data shown in CASEFILE are synthetic demonstration data created for this submission. CASEFILE is not affiliated with any government department, portal or official grievance system.
Developed by: Swarnim Tiwari
Submission: ChatGPT Build What Moves India Challenge
Category: Public Service Innovation