Skip to content

Latest commit

 

History

History
183 lines (90 loc) · 5.45 KB

README.md

File metadata and controls

183 lines (90 loc) · 5.45 KB

Auto-Proctoring Exam Web Application 🌟

A platform that aims to stop cheating in online exams with the power of AI and ML.

This is the my upgraded version of Prathamesh Mutkure's Anti-Cheat Exam Web App with new features:

  • Randomize Questions & Answers Order
  • Disable Copy Paste, Print Screen and Open DevTools Hotkeys
  • DevTools Detection & Protection
  • Content Management System for Managing Exams, Questions & Students
  • Credibility Score System & View Exam Results

Features and Interfaces

  1. Home Page

    Screenshot 2022-11-13 at 4 36 11 PM Screenshot 2022-11-13 at 6 04 36 PM
  2. Login Page (Authentication)

    • Fast and secure authentication
    • JWT tokens used to persist the authentication state
    Screenshot 2022-11-13 at 4 35 42 PM
  3. Dashboard

    • Shows bried information about all the exams assigned to the user

    • The user can start an exam only at the correct timeslot

    • If there are no exams available, you can go to the CMS website to create a new one

    Screenshot 2022-11-13 at 4 37 01 PM
  4. Exam Page

    • Simple and minimalistic exam page where the user can answer MCQ-based questions

    • The user can view and track their progress

    Screenshot 2022-11-13 at 5 59 55 PM Screenshot 2022-11-13 at 6 19 48 PM
  5. AI-powered face motion detector

    • I've used Google's Mediapipe library to track the motion of the user's face

    • This app can check if a user is trying to cheat by monitoring the co-ordinates of their face

    • The face detection is performed on client without sending anything to the server

    • Thus, Face detection is fast and real-time

      Anti-Cheat.Web.Demo.MP4.mp4

Tech stack

  • Next.js (React)

  • TypeScript

  • Redux

  • Axios

  • Google Mediapipe

  • NextAuth with JWT

Important Notes

  1. First setup the backend by following the instructions in this repository

  2. Use ID '20198235' and password 'namkiet3010' to login or you can create a new student account at CMS website

  3. Allow permissions for camera and mic when asked

  4. Make sure the BACKEND_URL is appended with /api

Getting Started

  1. Clone the project

    • https://github.com/namkiit/auto-proctoring-exam-web-app.git
  2. Install all the packages

    • npm install
  3. Create a .env file and set the following variables or as shown in the .env.example file

    • NEXT_PUBLIC_BACKEND_URL

    • NEXTAUTH_SECRET

    • NEXTAUTH_URL (must be identical to the url of the app)

  4. Run the app

    • npm run dev
  5. Open http://localhost:3000 with your browser to see the app

Useful Links

Credit

Base project belongs to Prathamesh Mutkure. You can know more about him at Twitter or prathamesh.co

Contact

Facebook Instagram