A production-ready Attendance Management System featuring Biometric Facial Recognition, Simple Two-Role RBAC, and Real-time Analytics. Designed to replace traditional manual attendance with a secure, automated, and scalable digital solution.
- Admin: Full system control - manage users, system settings, and analytics.
- User: General system users who can mark attendance and view their own logs.
- Automated Marking: Uses
dlibandface-recognitionto identify users in milliseconds. - Biometric Enrollment: Store high-dimensional face embeddings for privacy and speed.
- Face Scan: Seamless login and check-in experience.
- Real-time Analytics: Visual trends for attendance rates.
- CSV Export: Export logs for records or compliance.
- Mobile Responsive: Fully functional on tablets and smartphones.
graph TD
A[React Frontend] -->|JWT Auth| B[Django REST API]
B --> C[(SQLite)]
B --> D[OpenCV / Face Recognition Engine]
B --> E[Swagger Docs]
B --> F[CSV Export Service]
- Backend: Python 3.12, Django 5.0, Django REST Framework
- Frontend: React 18, Vite, Tailwind CSS
- Face Recognition: OpenCV, dlib, face-recognition
- Python 3.12+
- Node.js 18+
-
Backend:
cd djangopip install -r requirements.txtpython manage.py migratepython manage.py runserver
-
Frontend:
cd reactnpm installnpm run dev
The system uses a consolidated User model:
- User:
id,username,email,role(Admin/User),face_embedding. - Log:
id,user_id(FK),timestamp.
This project is licensed under the MIT License.