2.3 KiB
2.3 KiB
Teacher Tools Feature Completion Changelog — 2026-07-02
Overview
Successfully integrated the complete Pedagogical Framework (Teacher Tools) stubs in the frontend client and optimized the backend controllers to supply detailed joined relations.
Scope & Access Matrix
- Module: Pedagogical Framework / Teacher Tools
- Route:
/teacher-tools(accessible byteacher,principal,school_admin,systems_admin) - API Endpoints:
GET /api/teacher/syllabuses&POST /api/teacher/syllabusesGET /api/teacher/schemes&POST /api/teacher/schemesGET /api/teacher/focus-points&POST /api/teacher/focus-pointsGET /api/teacher/lesson-plans&POST /api/teacher/lesson-plans
Detailed Changes
Backend Enhancements
- File:
server/src/controllers/teacher.controller.js- Modified
GET /focus-pointsto joinschemes_of_workandsubjects_new, returningscheme_term,scheme_academic_year, andsubject_name. - Modified
GET /lesson-plansto joinsubjects_new,users, and left joinschemes_of_workandfocus_pointsto return related metadata (subject name, scheme term/year, focus topic). - Modified
POST /lesson-plansto allow nullablescheme_idandfocus_point_idreferences.
- Modified
Frontend Completion
- File:
client/src/pages/teacher/TeacherTools.tsx- Replaced stubs with a premium, responsive layout.
- Implemented the Interactive Weekly Planner in the Scheme of Work creation modal, allowing teachers to dynamically add/remove weeks with topics and objectives, saved as a JSON string under the
contentfield. - Added collapsible timelines for Schemes of Work to view the weekly timeline inside card components.
- Added list/grid views for Focus Points and Lesson Plans.
- Added collapsible detailed views for Lesson Plans covering objectives, introduction, development, conclusion, assessment methods, homework, and reflections.
- Implemented dynamic cascading selectors in the Lesson Plan creation modal: selecting a Subject filters available Schemes, and selecting a Scheme filters available Focus Points.
- Integrated dynamic subject fetching from
/api/subjectsto replace simple text inputs with database-synchronized registry options. - Ensured fully successful compilation and production-grade bundler builds.