How batyle/lewissee works
FaceAttend is a face-based attendance product with instructor access and administration. Staff access the React app, enroll students, and scan camera frames; attendance is recorded only after face recognition and a liveness check. Admins manage instructor access requests and class blocks. The repository includes both a Python attendance/liveness service and Node/Vercel admin and instructor APIs; the README documents these deployment roles, but the excerpts do not establish every implementation-level connection. The main scan-to-service links below are therefore grounded in the README.
Main entry points: ScannerWorkspace.jsx Attendance scanner · app.py Liveness API · App.jsx React app · [...path].js Vercel API
Components 18
Staff web app
- React app
src/App.jsx - Attendance scanner
src/ScannerWorkspace.jsx - Student enrollment
src/ScannerWorkspace.jsx - Admin pages
src/pages/Instructors.jsx - Admin session
src/context/AuthContext.jsx - Admin API client
src/api/adminApi.js
Attendance services
- Liveness API
liveness-server/app.py - Face liveness
passive_attendance/liveness.py - Face recognition
passive_attendance/embeddings.py - Attendance records
passive_attendance/attendance.py
Access management
- Vercel API
api/[...path].js - Database access
api/_lib/database.js - Instructor access API
server/controllers/instructorAuthController.js - Node API routes
server/server.js - Class blocks
server/routes/blockRoutes.js
Persistent data
- MySQL database
Other components
- Staff
- EmailJS
Connections 21
- Staff → React app: uses
src/App.jsx - React app → Attendance scanner: routes to
- React app → Student enrollment: routes to
- React app → Admin pages: routes to
src/App.jsx - Admin pages → Admin API client: requests
src/pages/Instructors.jsx - Admin session → Admin API client: authenticates via
src/context/AuthContext.jsx - Admin API client → Vercel API: calls
- Attendance scanner → Face recognition: recognizes faces
- Attendance scanner → Liveness API: submits frames
- Liveness API → Face liveness: checks liveness
- Liveness API → Face recognition: recognizes faces
- Liveness API → Attendance records: records attendance
- Attendance scanner → Liveness API: requests attendance
- Attendance scanner → EmailJS: sends check-in email
- Vercel API → Database access: uses
api/[...path].js - Vercel API → MySQL database: reads and writes
- Database access → MySQL database: connects to
- Node API routes → Instructor access API: routes to
server/server.js - Node API routes → Class blocks: routes to
server/server.js - Instructor access API → MySQL database: reads and writes
server/controllers/instructorAuthController.js - Class blocks → MySQL database: reads blocks
server/routes/blockRoutes.js