How preethamcodes/eksetu works
EKSetu is a consent- and policy-driven government verification gateway: a scholarship applicant initiates a request, the citizen reviews and grants or denies scoped consent, and authorized requests are evaluated and routed to departmental providers for verified results. The frontend also exposes citizen transparency and admin operations; backend audit, persistence, policy, security, and service-registry layers support those flows. Edges reflect README statements or SOURCE INDEX references and excerpts; unsampled controller and provider details are not expanded beyond documented behavior.
Main entry points: interoperabilityService.ts Interoperability gateway · apiRoutes.ts API routes · api.ts API client · adminController.ts Admin controller
Components 27
Citizen experience
- Scholarship flow
frontend/src/pages/ScholarshipPage.tsx - Transparency dashboard
frontend/src/components/CitizenTransparencyDashboard.tsx - Admin operations
frontend/src/pages/AdminOperationsPage.tsx - API client
frontend/src/services/api.ts
Gateway workflow
- API routes
backend/src/routes/apiRoutes.ts - Request controller
backend/src/controllers/requestController.ts - Consent controller
backend/src/controllers/consentController.ts - Interoperability gateway
backend/src/services/interoperabilityService.ts
Trust and governance
- Consent management
backend/src/services/consentService.ts - Service authorization
backend/src/services/authorizationService.ts - Policy evaluation
backend/src/services/policyService.ts - Policy engine
backend/src/policies/policyEngine.ts
Department providers
- Provider registry
backend/src/providers/providerRegistry.ts - Education provider
backend/src/providers/educationProvider.ts - Revenue provider
backend/src/providers/revenueProvider.ts - Residence provider
backend/src/providers/residenceProvider.ts
Operations and records
- Service registry
backend/src/registry/serviceRegistry.ts - Admin controller
backend/src/controllers/adminController.ts - Audit and provenance
backend/src/services/auditService.ts - Request persistence
backend/src/services/databaseService.ts - Operational metrics
backend/src/operations/metricsService.ts - Security events
backend/src/operations/securityEventService.ts - Transparency service
backend/src/services/transparencyService.ts - Citizen controller
backend/src/controllers/citizenController.ts
Other components
- Citizen
- Scholarship portal
- Supabase
Connections 33
- Citizen → Scholarship flow: submits request
README.md - Scholarship portal → API client: initiates verification
README.md - Scholarship flow → API client: calls
frontend/src/pages/ScholarshipPage.tsx - Transparency dashboard → API client: loads usage data
frontend/src/components/CitizenTransparencyDashboard.tsx - Admin operations → API client: requests operations
frontend/src/pages/AdminOperationsPage.tsx - API client → API routes: sends API requests
README.md - API routes → Request controller: routes requests
backend/src/routes/apiRoutes.ts - API routes → Consent controller: routes decisions
backend/src/routes/apiRoutes.ts - API routes → Citizen controller: routes citizen views
backend/src/routes/apiRoutes.ts - API routes → Admin controller: routes admin calls
backend/src/routes/apiRoutes.ts - Request controller → Interoperability gateway: delegates verification
backend/src/controllers/requestController.ts - Consent controller → Consent management: records decision
- Interoperability gateway → Consent management: checks consent
backend/src/services/interoperabilityService.ts - Interoperability gateway → Service authorization: checks service trust
backend/src/services/interoperabilityService.ts - Interoperability gateway → Policy evaluation: requests policy decision
backend/src/services/interoperabilityService.ts - Policy evaluation → Policy engine: evaluates rules
- Interoperability gateway → Provider registry: selects providers
backend/src/services/interoperabilityService.ts - Interoperability gateway → Education provider: requests education proof
backend/src/services/interoperabilityService.ts - Interoperability gateway → Revenue provider: requests income proof
backend/src/services/interoperabilityService.ts - Interoperability gateway → Residence provider: requests residence proof
backend/src/services/interoperabilityService.ts - Interoperability gateway → Service registry: checks service registry
backend/src/services/interoperabilityService.ts - Interoperability gateway → Audit and provenance: records verification events
backend/src/services/interoperabilityService.ts - Interoperability gateway → Request persistence: persists request data
backend/src/services/interoperabilityService.ts - Interoperability gateway → Operational metrics: records metrics
backend/src/services/interoperabilityService.ts - Interoperability gateway → Security events: records security events
backend/src/services/interoperabilityService.ts - Admin controller → Service registry: manages services
backend/src/controllers/adminController.ts - Admin controller → Operational metrics: reads metrics
backend/src/controllers/adminController.ts - Admin controller → Security events: reads security events
backend/src/controllers/adminController.ts - Citizen controller → Request persistence: loads citizen requests
backend/src/controllers/citizenController.ts - Citizen controller → Transparency service: builds transparency view
backend/src/controllers/citizenController.ts - Request controller → Audit and provenance: loads audit trail
backend/src/controllers/requestController.ts - Audit and provenance → Request persistence: stores and reads events
backend/src/services/auditService.ts - Request persistence → Supabase: uses persistence
backend/src/services/databaseService.ts