Sahulat
AI-powered civic complaint management, in English and Urdu
A bilingual complaint-management platform where citizens report civic problems on the web and Android, with 28 AI capabilities, SLA tracking, offline reporting and a tamper-evident audit trail.
- React
- Type
Script - Node.js
- Express
- Mongo
DB - Vite
- Mongoose
- Zustand
- Tailwind CSS
- Capacitor 8
- JWT
- RBAC
- Deep
Seek - Gemini
- Open
AI - Mistral
- Ollama
- RAG
- Vector embeddings
- AI vision
- Indexed
DB - Web
Sockets - HMAC
- Redis
- Bull
MQ - Google Maps
- i18next
- Vitest
- Jest
- Git
Hub Actions
- Built at
- Final-year project, FUUAST — development collaborator
- Sector
- Government · Civic tech
- Region
- PK
- Period
- 2025 — 26
- Role
- Key development collaborator — full stack, architecture and AI
- Team
- Another team’s final-year project; I carried out most of the development
- Web platform
- Back end
- AI
- Mobile
Sahulat lets citizens report civic problems (road damage, water outages, sanitation, broken streetlights, illegal construction, public safety) and follow them until they are fixed, in English or Urdu, on the web or on Android.
It began as another team’s university final-year project. I was not an official member of that team, but I carried out most of the development, across the front end, the back end, the architecture and the integrations.
Every complaint is routed by category, department and city, and five kinds of user work on it: citizens, field officers, department administrators, super administrators and independent auditors. AI helps at every step but stays advisory: assignment, resolution, overrides and appeals always need a person’s decision.
Accountability is built in. A tamper-evident audit log chains every record with HMAC hashes, so any change to the history can be detected.
- Op 01
Built the platform full stack in React, TypeScript, Node.js, Express and MongoDB, with REST APIs, JWT authentication and role-based access for five user types.
- Op 02
Built 28 AI capabilities (classification suggestions, priority and sentiment analysis, evidence and image verification, translation, resolution forecasting, report drafting, operational insights) on a fallback across DeepSeek, Gemini, OpenAI, Mistral and Ollama, with RAG, embeddings and heuristic fallbacks.
- Op 03
Built complaint tracking, SLA monitoring, real-time updates over WebSockets, geolocation-based field verification with Google Maps, analytics, transparency reports and appeals.
- Op 04
Made complaints and progress updates work offline: saved in IndexedDB and synchronised when the connection returns.
- Op 05
Implemented the tamper-evident audit trail with HMAC hash chaining, plus integrity monitoring.
- Op 06
Made the whole platform bilingual, English and Urdu, with i18next.
- Op 07
Shipped the Android app with Capacitor 8 from the same React codebase, using the native camera, GPS, connectivity and sharing.
- Op 08
Backed the codebase with automated tests and CI on GitHub Actions: 1,886 back-end tests and 531 front-end tests.
- A live civic platform on the web and Android, in English and Urdu.
- 28 AI capabilities that advise, while every critical decision stays with a person.
- 1,886 back-end and 531 front-end automated tests, run in CI.
- 28AI capabilitiesadvisory, on a five-provider fallback with RAG
- 1,886back-end testsJest, run on GitHub Actions
- 531front-end testsVitest
- 5user rolescitizens, officers, admins, super admins, auditors
Under the hood
- Web app (React · English / Urdu)→REST API (Node.js · Express)
- Android (Capacitor 8 · offline)→REST API (Node.js · Express)
- REST API (Node.js · Express)→Routing (category · department · city)
- REST API (Node.js · Express)→MongoDB (complaints, SLAs)
- REST API (Node.js · Express)→AI layer (28 capabilities · RAG)
- Routing (category · department · city)→Officers & admins (5 roles)
- MongoDB (complaints, SLAs)→Audit chain (HMAC hashes)
- AI layer (28 capabilities · RAG)→AI providers (DeepSeek, Gemini, OpenAI…)
From the live site


