How darshan758/ai-enabled-smart-village-service-portal-using-mern-stack- works
Smart Village is a civic-issue platform: citizens register and submit location- and image-supported complaints, then administrators and departments route, assign, track, and verify resolution work. Its backend also provides agricultural price/advisory, government-scheme eligibility and document checks, and an FAQ assistant. The graph follows documented routes and sampled or indexed imports; unsampled feature integrations are omitted or shown as unverified dashed links.
Main entry points: server.js API server · App.jsx Web routing · complaintController.js Complaint handling · Complaint.js Complaint records
Components 26
Web experience
- Web routing
frontend/src/App.jsx - Complaint workflows
frontend/src/pages/ComplaintForm.jsx - Admin dashboard
frontend/src/pages/AdminDashboard.jsx - Worker dashboard
frontend/src/pages/WorkerDashboard.jsx - Session context
frontend/src/context/AuthContext.jsx - Farm advisory
frontend/src/features/agri/pages/AdvisoryPage.jsx
Civic operations
- API server
backend/server.js - Complaint routes
backend/routes/complaintRoutes.js - Complaint handling
backend/controllers/complaintController.js - Admin routes
backend/routes/adminRoutes.js - Admin management
backend/controllers/adminController.js - Department operations
backend/controllers/departmentController.js - Worker operations
backend/controllers/workerController.js
Identity and data
- Complaint records
backend/models/Complaint.js - User accounts
backend/models/User.js - Role authorization
backend/middleware/authMiddleware.js - Scheme records
backend/scheme-module/models/Scheme.js
Community services
- FAQ assistant
backend/assistant/assistantController.js - Assistant knowledge
backend/assistant/knowledge.js - Agriculture services
backend/controllers/agriController.js - Scheme eligibility
backend/scheme-module/controllers/eligibilityController.js - Document checks
backend/scheme-module/services/documentEngine.js
Live operations
- Realtime events
backend/socket/socketHandler.js - SMS notifications
backend/utils/smsService.js
Other components
- Citizens
- MongoDB
Connections 31
- Citizens → Web routing: use
README.md - Web routing → Complaint workflows: routes to
frontend/src/App.jsx - Web routing → Admin dashboard: routes to
frontend/src/App.jsx - Web routing → Worker dashboard: routes to
frontend/src/App.jsx - Web routing → Farm advisory: routes to
frontend/src/App.jsx - Session context → User accounts: authenticates via
frontend/src/context/AuthContext.jsx - API server → Complaint routes: mounts
backend/server.js - API server → Admin routes: mounts
backend/server.js - Complaint routes → Complaint handling: routes requests
backend/routes/complaintRoutes.js - Admin routes → Admin management: routes requests
backend/routes/adminRoutes.js - Admin routes → Role authorization: protects routes
backend/routes/adminRoutes.js - Complaint routes → Role authorization: protects routes
backend/routes/complaintRoutes.js - Complaint handling → Complaint records: creates and queries
backend/controllers/complaintController.js - Complaint handling → User accounts: looks up reporter
backend/controllers/complaintController.js - Admin management → Complaint records: manages
backend/controllers/adminController.js - Admin management → User accounts: manages accounts
backend/controllers/adminController.js - Department operations → Complaint records: handles assignments
backend/controllers/departmentController.js - Worker operations → Complaint records: updates work
backend/controllers/workerController.js - Complaint records → MongoDB: persists in
README.md - User accounts → MongoDB: persists in
README.md - API server → FAQ assistant: mounts routes
backend/server.js - FAQ assistant → Assistant knowledge: retrieves answers
backend/assistant/assistantController.js - API server → Agriculture services: mounts routes
backend/server.js - Farm advisory → Agriculture services: requests advice
- API server → Scheme eligibility: mounts routes
backend/server.js - Scheme eligibility → Scheme records: reads schemes
backend/scheme-module/controllers/eligibilityController.js - Scheme eligibility → Document checks: checks documents
- Complaint handling → SMS notifications: sends updates
backend/controllers/complaintController.js - Admin management → SMS notifications: sends updates
backend/controllers/adminController.js - API server → Realtime events: initializes
backend/server.js - Complaint handling → Realtime events: emits events
backend/controllers/complaintController.js