Live Demo: https://faceducation-react.vercel.app
Note: The facial recognition service will be disabled on the demo due to cloud resource constraints.
Faceducation is an enterprise-level education management system that combines:
- Facial-recognition attendance (with anti-spoofing + averaged embeddings)
- Auto scheduling timetable capabilities and conflict-aware operations
- A full campus workflow system (barring, leave management, replacements, programme management, enrollment, reporting)
The system is designed around real operational workflows (recommend → approve → execute) and role-based actions.
- Frontend: React (Vite + TypeScript)
- Backend API: Flask
- Facial Recognition Service: FastAPI (separate service; may be disabled on demo)
- Database: MySQL
- Caching / Queue / Sessions: Redis
- Login
- Account Registration
- Profile Management (CRUD + account updates)
- Facial Recognition Attendance (login + attendance using averaged embedding)
- Anti-spoofing measures to prevent fraudulent attendance
- Late detection & restrictions
- Configurable grace period
- Late markings don’t count as attendance
- Real-time notifications for late students
- Classroom monitoring
- Periodic presence verification
- Alerts for early departures
- Automated reporting
- Presence / late / absent breakdowns
- Notification-ready outputs (e.g., parent/guardian messaging)
- Timetable Management
- Publish daily/weekly timetables
- Room & instructor assignment
- Prevent conflicting bookings
- Student-friendly timetable views
- Programme Management
- Manage programme offerings, prerequisites, cohort limits
- Programme Enrollment
- Enrollment requests
- Approval tracking and status visibility
- Barring System
- Automatic barring based on low attendance thresholds
- Configurable rules
- Appeal process + supporting documents
- Leave Management
- Student leave applications
- Teacher leave applications
- Approval workflows (PL/Teacher/Admin)
- Leave balance carry-forward logic
- Class Replacement
- Teacher substitution requests
- Approval + schedule update flow
- Attendance and performance insights
- Summary dashboards and workflow visibility
Roles are designed to reflect real campus operations and approvals.
- Register/login and manage profile
- View timetable and enrolled programmes
- Submit leave applications (with supporting details)
- View attendance status and outcomes (present/late/absent, barred status)
- Submit appeals if barred (with documents)
- Take/verify attendance (including late rules + presence checks)
- Monitor classroom attendance and early departure alerts
- Review student leave requests (where applicable)
- Create class replacement requests
- Recommend barring actions (when attendance thresholds are violated)
- Approve / reject teacher leave (first-level approval)
- Review academic workflow items that require programme-level decision
- Provide recommendations before admin final approval
- Full system administration (accounts, configurations, master data)
- Final approver for critical workflows
- Approve teacher leave (admin-only final approval)
- Approve barring recommendations
- Manage timetable operations and system-wide rules
- Oversee reporting and analytics
- Attendance is captured through facial recognition and/or verification checks.
- System computes attendance rate using configured thresholds.
- When the threshold is violated, Teacher/PL can recommend barring.
- Admin reviews recommendation + evidence/records.
- Admin approves/rejects the barring decision.
- If barred, Student may submit an appeal with supporting documents.
- Leave balance carry forward is applied based on year-end rules.
- Student leave: Student applies → Teacher/Admin reviews (based on rules) → Approved/Rejected.
- Teacher leave: Teacher applies → PL approves (first stage) → Admin approves (final stage; admin-only).
- Teacher submits a replacement request (reason + target class).
- Approval is performed based on role rules.
- If approved, timetable/class assignment updates accordingly.
































