Live Link : https://videoproctoringsystemv2.vercel.app/
Frontend : https://videoproctoringsystemv2.vercel.app/
Backend API : https://video-interview-proctoring-system-v2-0.onrender.com
This project is a comprehensive video interview proctoring system. It leverages real-time computer vision to monitor candidate focus and detect suspicious objects during online interviews. The system also generates detailed reports with an integrity score to evaluate the authenticity of interview sessions.
A video proctoring system enhances the reliability and integrity of online interviews by:
- Ensuring candidate focus: Detects if candidates are attentive during interviews.
- Detecting unauthorized behavior: Flags multiple faces, suspicious objects, or prohibited devices in real time.
- Maintaining interview integrity: Generates detailed reports for evaluation.
- Providing real-time alerts: Optionally notifies if suspicious events occur during the session.
This project demonstrates the integration of modern web technologies and real-time computer vision for a secure and interactive online interview experience.
- Real-time Focus Detection: Monitors candidate attention using face and eye tracking.
- Face Detection: Identifies presence/absence of faces and flags multiple faces in the frame.
- Object Detection: Detects unauthorized items such as phones, books, or electronic devices using TensorFlow.js.
- Integrity Scoring: Computes a final score based on logged suspicious events.
- Detailed Reports: Generates session summaries including all events and the overall integrity score.
- Tech Stack: MERN (MongoDB, Express, React, Node.js), TensorFlow.js, MediaPipe, React Webcam
- Node.js (v16 or higher recommended)
- npm (v8 or higher recommended)
- MongoDB instance (local or MongoDB Atlas)
- Modern web browser with camera access
git clone https://github.com/your-username/video-proctoring-system.git
cd video-proctoring-systemBackend:
cd backend
npm installFrontend:
cd frontend
npm installCreate a .env file in the backend directory and add your MongoDB connection URI:
MONGODB_URI=your-mongodb-connection-stringBackend:
npm run devFrontend:
cd frontend
npm run devThe frontend will be available at http://localhost:3000 by default.
The application can be deployed on platforms such as Vercel (frontend) and Render (backend).
Frontend Deployment (Vercel):
- Push your frontend code to GitHub.
- Create a new project on Vercel and link the repository.
- Set environment variables if required.
- Deploy to get a public URL: https://videoproctoringsystemv2.vercel.app/
Backend Deployment (Render):
- Push your backend code to GitHub.
- Create a Web Service on Render and connect the repository.
- Set build command:
npm install- Set start command:
npm start- Add environment variable
MONGODB_URI. - Deploy to get a public URL: https://video-interview-proctoring-system-v2-0.onrender.com
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/sessions | Create a new session |
| POST | /api/sessions/:id/events | Log a detection event |
| PUT | /api/sessions/:id/end | End a session |
| GET | /api/sessions/:id | Retrieve final report |
This project is licensed under the MIT License.