# Project Backlog: Infrastructure-to-Frontend Gaps This document tracks school management modules that have backend database infrastructure but lack frontend implementation. ## Completed (2026-06-12) - **Front Office (5 tables live, 3 new pages, 1 new controller)**: `phone_call_logs` and `postal_dispatch` activated with full CRUD; `visitor_logs`, `admission_enquiries`, `complaints` UIs already existed. New pages: `PhoneCalls`, `PostalDispatch`. Routes: `/front-office/phone-calls`, `/front-office/postal`. Roles: `school_admin` / `systems_admin` / `principal` / `teacher` (teacher is read-only for postal). PR: `integration/front-office-and-attendance` (merge SHA `cb3dcc8`). - **Multi-context Attendance (4 controllers, 4 pages)**: New controllers `club-attendance`, `hostel-attendance`, `transport-attendance` (each with `GET /`, `GET /roster`, `POST /bulk`, `GET /history`). New `GET /api/attendance/today` on the class controller. Pages: `AttendanceTake` (4 tabs: Class / Hostel / Club / Transport), `TeacherAttendanceHistory`, `ParentAttendanceHistory` (read-only), shared `AttendanceHistoryView` (4 tabs, summary tiles, CSV export). Routes: `/attendance/take`, `/attendance/history`. PR: `integration/front-office-and-attendance`. ## Priority 1: Inventory & Asset Management - [ ] **Item Catalog UI**: Create views to list, search, and categorize school supplies (stationery, electronics). - [ ] **Stock Transactions**: Implement forms for recording purchases, adjustments, and current stock levels. - [ ] **Item Issuing System**: UI for assigning items to staff, departments, or students with return tracking. - **DB Tables**: `items`, `item_stock`, `stock_transactions`, `item_issues`. ## Priority 2: ~~Front Office & Visitor Management~~ (DONE — see Completed) - [x] **Digital Visitor Log** — `client/src/pages/admin/front-office/VisitorLog.tsx` (shipped pre-2026-06-12). - [x] **Admission Enquiry CRM** — `client/src/pages/admin/front-office/AdmissionEnquiry.tsx` (shipped pre-2026-06-12). - [x] **Complaints Manager** — `client/src/pages/admin/front-office/Complaints.tsx` (shipped pre-2026-06-12). - [x] **Phone-Call Log** — `client/src/pages/admin/front-office/PhoneCalls.tsx` + controller (`front-office.controller.js` `phone-calls` block). NEW 2026-06-12. - [x] **Postal Dispatch** — `client/src/pages/admin/front-office/PostalDispatch.tsx` + controller (`front-office.controller.js` `postal` block). NEW 2026-06-12. - **DB Tables**: `visitor_logs`, `admission_enquiries`, `complaints`, `phone_call_logs`, `postal_dispatch`. ## Priority 3: ~~Online Exam & Quiz Engine~~ (DONE — see Completed) - [x] **Student Exam Interface** — `client/src/pages/exams/ExamViews.tsx` (TakeExamPage) shipped pre-2026-06-12. - [x] **Teacher Exam Builder** — `client/src/pages/exams/ExamEditor.tsx` shipped pre-2026-06-12. - [x] **Results Dashboard** — `ExamResultsPage` shipped pre-2026-06-12. - **DB Tables**: `exam_groups`, `question_banks`, `exam_attempts`, `exam_answers`. ## Priority 4: HR & Payroll Self-Service - [ ] **Leave Management**: Portal for staff to apply for leave and for admins to approve/reject requests. - [ ] **Payroll Processing**: Accountant UI for running monthly payroll and generating payslips. - [ ] **Staff Payslips**: Self-service view for employees to download their historical payslips. - **DB Tables**: `leave_requests`, `payroll_runs`, `payslips`. ## Priority 5: Specialized Resource Management - [ ] **Hostel Portal**: Room allocation, bed availability tracking, and hostel fee management. - [ ] **Transport Dashboard**: Fleet management, route mapping, and student pickup assignments. - **DB Tables**: `hostels`, `rooms`, `vehicles`, `transport_allocations`. ## Priority 6: Library Circulation - [ ] **Book Catalog**: UI for searching and managing the school library's book collection. - [ ] **Borrowing System**: Interface for checking books in and out to students/staff. - **DB Tables**: (Requires extension of existing library fee structure).