・VISHWAS / PORTFOLIO
0%
INITIALIZING EXPERIENCE

Ward file 03/11 · CIVIC GOVERNANCE PLATFORM

ನಾಗರಿಕ

NagarikOne

Snap a civic problem. AI routes it to the right department.

Report
it in
any language

Civic complaints arrive unstructured, duplicated and multilingual, and tracking which department owns them — and holding it accountable — is manual.

A civic issue-reporting platform: citizens photograph a pothole, garbage pile or broken streetlight in a mobile app, in any language, and Gemini translates, categorises, prioritises and routes it — while municipal and department admins work it on a live dashboard with heatmaps, SLAs and a department leaderboard.

From pothole
to resolved

  1. 1

    Report

    The citizen submits a photo, GPS location and a description from the Expo app.

  2. 2

    Understand

    Gemini translates to English and returns category, priority, urgency (1–5) and the owning department.

  3. 3

    Verify

    Gemini vision classifies the photo; if image and text agree the report is AI-verified, otherwise it waits for review.

  4. 4

    De-duplicate

    A PostGIS proximity check within a 24-hour window upvotes an existing report instead of creating a new one.

  5. 5

    Resolve

    Admins approve and set an SLA; the department resolves with a proof photo, earning leaderboard points — live over Socket.io.

5role levelscitizen → super-admin
24hduplicate window
+25SLA bonus points

Around the city

Multilingual reporting

↑

Report in any language; AI translates for the department.

Two-signal AI check

↗

Text category and image category must agree before a report is trusted.

Geo duplicate merging

→

Nearby repeats become upvotes on one report.

Live heatmap

↖

Leaflet heatmap and map view of every open issue.

SLA leaderboard

↰

Departments earn points for resolving, with a bonus inside the SLA.

Public works register

01

Image × text verification

Two independent Gemini signals have to agree before a report skips manual review.

server/routes/reportRoutes.js ↗
02

PostGIS duplicate merge

ST_DWithin on report geometry, filtered by category and a 24-hour window, turns repeats into upvotes.

server/routes/reportRoutes.js ↗
03

SLA-weighted gamification

50 points per resolution, +25 inside the SLA — feeding a public department leaderboard.

server/routes/reportRoutes.js ↗
Dept. of MobileExpo · React Native · expo-camera · react-native-maps
Dept. of Admin webReact 19 · Vite · Chart.js · Leaflet
Dept. of BackendNode · Express 5 · Sequelize · Socket.io · JWT
Dept. of Data & AIPostgreSQL · PostGIS · Cloudinary · Gemini 1.5 Flash
Exit 04↗
GlaciesA digital twin of Bengaluru's transit, built to ask “what if”.