How nithinkumar2704/civic_bridge works
CivicBridge AI turns citizen reports into persistent, clustered civic issues, then supports municipal triage, response, resolution verification, and recurrence detection. Citizens and authorities use separate portal views backed by a FastAPI API. Complaint understanding and evidence/priority assessment feed issue clustering; Hindsight memory supplies recurrence context while the application database remains the system of record. The README documents analytics, assistant memory, and an eight-step demo; their wiring is only partly shown in sampled source, so uncertain internal links are omitted.
Main entry points: main.py FastAPI application · complaints.py Complaints API · session.py Database session · complaint.py Application database
Components 26
Civic portals
- Citizen portal
frontend/components/CitizenView.tsx - Government portal
frontend/components/GovernmentView.tsx - Analytics view
frontend/components/AnalyticsView.tsx - Demo scenario
frontend/components/DemoScenarioStepper.tsx - Frontend API client
frontend/services/api.ts
Complaint intelligence
- Complaints API
backend/app/api/complaints.py - Complaint understanding
backend/app/services/ai_service.py - Classification and routing
backend/app/agents/classification_routing_agent.py
Issue operations
- Issues API
backend/app/api/issues.py - Analytics API
backend/app/api/analytics.py - Demo API
backend/app/api/demo.py - Issue clustering and scoring
backend/app/services/clustering_service.py
Memory and insight
- Assistant API
backend/app/api/assistant.py - Memory context agent
backend/app/agents/memory_context_agent.py - Hindsight memory service
backend/app/services/hindsight_service.py
Application foundation
- FastAPI application
backend/app/main.py - Authentication API
backend/app/api/auth.py - Database session
backend/app/database/session.py - Application database
backend/app/models/complaint.py - User records
backend/app/models/user.py - Issue cluster records
backend/app/models/issue_cluster.py - Department actions
backend/app/models/department_action.py - Resolution confirmations
backend/app/models/resolution_confirmation.py
Other components
- Citizen
- Municipal authority
- Hindsight service
Connections 31
- Citizen → Citizen portal: reports and verifies
- Municipal authority → Government portal: triages and responds
- Citizen portal → Frontend API client: requests services
- Government portal → Frontend API client: requests services
- Analytics view → Frontend API client: requests analytics
- Demo scenario → Frontend API client: runs scenario
- Frontend API client → FastAPI application: REST requests
- FastAPI application → Authentication API: dispatches routes
- FastAPI application → Complaints API: dispatches routes
- FastAPI application → Issues API: dispatches routes
- FastAPI application → Analytics API: dispatches routes
- FastAPI application → Assistant API: dispatches routes
- FastAPI application → Demo API: dispatches routes
- Complaints API → Complaint understanding: understands reports
- Complaints API → Classification and routing: routes category
- Complaints API → Issue clustering and scoring: clusters complaints
- Issues API → Issue clustering and scoring: manages clusters
- Complaints API → Memory context agent: retains context
- Memory context agent → Hindsight memory service: recalls and retains
- Issue clustering and scoring → Hindsight memory service: recalls and records
- Hindsight memory service → Hindsight service: memory operations
- Authentication API → Database session: queries users
- Complaints API → Database session: persists complaints
- Issues API → Database session: persists issue actions
- Analytics API → Database session: reads metrics
- Demo API → Database session: resets demo data
- Database session → Application database: reads and writes
- Application database → User records: stores identities
- Application database → Issue cluster records: stores clusters
- Application database → Department actions: stores actions
- Application database → Resolution confirmations: stores confirmations