// Full Stack · AI Evaluation · Proctoring
CSE Placement Training
Live proctored examination platform used by my college
Design, frontend, backend, proctoring & deployment · 2025
Illustrative preview — replace with a real screenshot by adding `public/projects/cse-placement-training.png` and wiring it into ProjectVisual.
A deployed CSE placement-training platform used by my college for training and assessments. It handles exam scheduling, randomized questions, server-controlled timers, auto-save, automatic submission on expiry, crash recovery, and JSON bulk question import.
The proctoring layer combines webcam face detection, gaze tracking, fullscreen and tab monitoring, suspicious-action detection, and a Trust Score that aggregates violations for review.
I also integrated Llama 3.1 8B Instant through the Groq API for semantic answer evaluation with partial marking and a manual-review fallback. That AI evaluation path was later removed from production due to API and deployment constraints — the rule-based grading, rankings, and percentile analytics remain live.
// features
Exam engine
Scheduling, randomized questions, server-controlled timers, auto-save, deadline handling, crash recovery, and bulk JSON question import.
Webcam proctoring
Face detection, gaze tracking, fullscreen/tab monitoring, suspicious-action detection, and Trust Score–based violation tracking.
Grading & analytics
Automated grading with rankings and percentile analytics. Semantic evaluation with Llama 3.1 via Groq (partial marking + manual-review fallback) — since removed from production.
Access control
JWT authentication with role-based workflows for admins, coordinators, and students.
// architecture
- React frontend on Vercel; Node.js + Express API on Railway; MongoDB for exams, questions, attempts, and results; Firebase for auth/session support.
- Server is the source of truth for timers and submission deadlines — clients auto-save and recover after crashes or reloads.
- Proctoring runs on-device (WebGazer + face-api.js) and streams violation events to the backend, where a Trust Score aggregates them per attempt.
- Groq / Llama 3.1 evaluation ran as an isolated service path with manual-review fallback so grading never blocked on the LLM.
// implementation
- Randomized question delivery to reduce leakage across concurrent sessions.
- Auto-save with deadline-aware auto-submission on time expiry.
- Bulk question import via JSON for fast exam setup by coordinators.
- Role-scoped APIs so students, coordinators, and admins only see their workflows.
// challenges
300 concurrent students during training and assessments.
approach — Kept timers and grading server-side, minimized payload sizes, and made the client resilient to reloads so spikes degrade gracefully instead of losing attempts.
Cheating signals are noisy (lighting, movement, tab changes).
approach — Combined multiple weak signals — face presence, gaze, fullscreen, tab visibility — into a single Trust Score for human review instead of hard auto-fail.
LLM evaluation depended on external API availability.
approach — Wrapped semantic grading with partial marking plus manual-review fallback, then removed it from production when API and deployment constraints made it unreliable.