Logo Lanfrica

COSMASVICTOR/govtrack-kenya

Domain:

digital infrastructure

Record type:

software
Creator:
COS
Host:
# GovTrack Kenya **A Web-Based Platform for Integrated Tracking & Retrieval of Lost Government Documents** > Machakos University CS Project Β· Victor Mauti Cosmas Β· J17-1239-2022 --- ## πŸ“ Project Structure ``` govtrack-kenya/ β”œβ”€β”€ backend/ ← Node.js + Express + MongoDB API β”‚ β”œβ”€β”€ models/ ← Mongoose data models β”‚ β”‚ β”œβ”€β”€ User.js β”‚ β”‚ β”œβ”€β”€ Document.js β”‚ β”‚ β”œβ”€β”€ LostReport.js β”‚ β”‚ └── FoundItem.js β”‚ β”œβ”€β”€ routes/ ← Express API routes β”‚ β”‚ β”œβ”€β”€ auth.js ← Register / Login / JWT β”‚ β”‚ β”œβ”€β”€ documents.js ← Track & view documents β”‚ β”‚ β”œβ”€β”€ lostReports.js ← Submit & view lost reports β”‚ β”‚ β”œβ”€β”€ foundItems.js ← Search found items β”‚ β”‚ └── admin.js ← Admin-only endpoints β”‚ β”œβ”€β”€ middleware/ β”‚ β”‚ └── auth.js ← JWT protect & adminOnly middleware β”‚ β”œβ”€β”€ server.js ← Express app entry point β”‚ β”œβ”€β”€ seed.js ← Seed database with sample data β”‚ β”œβ”€β”€ .env ← Environment variables β”‚ └── package.json β”‚ └── frontend/ ← React app └── src/ β”œβ”€β”€ api/ β”‚ └── axios.js ← All API calls (Axios) β”œβ”€β”€ context/ β”‚ └── AuthContext.jsx ← Global auth state + JWT storage β”œβ”€β”€ components/ β”‚ β”œβ”€β”€ Icon.jsx ← SVG icon library β”‚ β”œβ”€β”€ Sidebar.jsx ← Navigation sidebar β”‚ └── StatusBadge.jsx ← StatusBadge + DocTypeIcon β”œβ”€β”€ pages/ β”‚ β”œβ”€β”€ LandingPage.jsx β”‚ β”œβ”€β”€ AuthPage.jsx ← Login + Register β”‚ β”œβ”€β”€ Dashboard.jsx β”‚ β”œβ”€β”€ CitizenPages.jsx ← Track, MyDocs, ReportLost, FoundItems, MyReports β”‚ └── admin/ β”‚ └── AdminPages.jsx ← All 5 admin pages β”œβ”€β”€ styles/ β”‚ └── global.css β”œβ”€β”€ App.jsx ← Main router └── index.js ``` --- ## πŸš€ Setup Instructions ### Prerequisites - Node.js (v18+) - MongoDB (local or MongoDB Atlas) - Windsurf / VS Code --- ### 1. Backend Setup ```bash cd backend npm install ``` Edit `.env` with your MongoDB URI: ``` PORT=5000 MONGO_URI=mongodb://localhost:27017/govtrack_kenya JWT_SECRET=go …

Languages