Skip to content

Gauresh25/ProctorPlus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

63 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ ProctorPlus

A comprehensive online examination system with advanced proctoring capabilities, domain-specific assessments, and robust authentication mechanisms.

πŸ“‘ Table of Contents

🌟 Key Features

πŸ“š Multi-Domain Assessment System

Our assessment platform implements a versatile multi-domain system designed to evaluate candidates across different specializations. The system has been architected to handle three distinct domains while maintaining flexibility for future expansions.

Question Types

  1. Multiple Choice Questions (MCQs)

    • Advanced randomization and time-tracking features
    • Categorized by difficulty level and topic
    • Prevents backward navigation
    • Question-specific time limits
  2. Descriptive Answers

    • Rich text editor with auto-save functionality
    • Markdown formatting support
    • Response length and writing time tracking
    • Content preservation features
  3. Domain-Specific Challenges

    • Technical candidates: Live coding exercises
    • Design candidates: Portfolio submissions with process documentation
    • Marketing candidates: Video presentations of campaign strategies

πŸ” Advanced Biometric Authentication

  1. Face Registration Process

    • Multiple facial angle capture
    • Different lighting condition support
    • Reliable reference profile creation
  2. Pre-exam Verification

    • Thorough identity verification
    • Advanced facial recognition algorithms
    • Real-time profile matching
  3. Continuous Monitoring

    • Periodic face matching
    • Session security maintenance
    • Prevention of candidate substitution

πŸ‘€ Comprehensive Proctoring System

Visual Monitoring

  • Face presence and position tracking
  • Suspicious movement detection
  • Multiple person detection
  • Screen focus monitoring

Environment Control

  • Fullscreen mode enforcement
  • Browser tab switching prevention
  • Multiple window detection
  • Copy-paste restriction

Keystroke Analytics

  • Timestamp recording for keypresses
  • Typing rhythm pattern analysis
  • Speed variation monitoring
  • Special key combination tracking
  • Backspace pattern analysis
  • Automation detection
  • Pattern change monitoring

Mouse Movement Analytics

  • Continuous position tracking
  • Movement trajectory analysis
  • Click pattern monitoring
  • Automated movement detection

Audio Monitoring

  • Voice activity detection
  • Keyword monitoring
  • Background noise analysis
  • Communication attempt detection

πŸ“Š Analytics and Reporting

Submission Analysis

  • Response pattern tracking
  • Performance metrics
  • Skill evaluations
  • Score distribution analysis

Behavioral Analysis

  • Question timing metrics
  • Navigation pattern tracking
  • Interaction analysis
  • Suspicious activity monitoring

Integrity Verification

  • Plagiarism detection
  • Content similarity analysis
  • Source matching
  • Activity logging

πŸ› οΈ Technical Stack

Frontend

  • React.js
  • Context API for state management
  • Face-api.js for face recognition
  • React Webcam for video capture

Backend

  • Django
  • Django REST Framework
  • SimpleJWT for authentication
  • PostgreSQL database

πŸ€– AI Proctoring System Components

1. Biometric Authentication System

Architecture

  • FaceAPI.js with SSD MobileNet v1
  • Real-time face detection
  • CNN-based neural network

Technical Components

  • Face Detection (SSD)
  • Face Recognition (128-dimensional embeddings)
  • Performance Metrics

2. Behavioral Analysis System

Core Components

  • Keystroke Dynamics Analysis
  • Mouse Movement Analysis
  • Pattern Recognition
  • Key Metrics Analysis

3. Audio Monitoring System

Speech Recognition Architecture

  • Web Speech API
  • NLP Pipeline
  • Real-time processing
  • Pattern Recognition [Previous sections remain the same...]

4. AI Content Detection System

  • RoBERTa-base OpenAI detector model
  • Real-time content analysis pipeline
  • Neural transformer-based classification
  • Token-level analysis
  • Confidence scoring system

πŸ“ Project Implementation

Registration with compulsory face registration Registration

Login for registered users: Login

Landing page -entry point to the website Landing page

Test catalogue - view all available tests Test catalogue

Test environment

Mandatory face validation, matching with registered image face validation

Exam instructions: instructions

MCQ interface: MCQ interface

Descriptive question section: Descriptive question

Coding section: Coding section

Design specific question: Design specific question

Marketing specific section: Marketing specific section

Successful submission of exam: Successful

Violations

Exiting fullscreen: Exiting fullscreen

Examinee looking away warning: looking away warning

Keywords heard on examinee mic: Keywords heard

Exam termination if number of violation exceeded: Exam termination

Reports

Reports page: Reports page

Detailed view including evaluated mcq, descriptive answers at a glance, domain specific submission, Behavioral analysis and plagiarism/AI generated content check[only accessible for users with staff access] Detailed view Detailed view

Django admin panel

Django admin panel

Project demo:

Video Title

πŸ“ Project Structure

project/
β”œβ”€β”€ frontend/           # React + Vite frontend
β”‚   β”œβ”€β”€ src/           # React source files
β”‚   β”œβ”€β”€ public/        # Static files
β”‚   └── ...
└── ProctorPlus/       # Django backend
    β”œβ”€β”€ hello/         # Django app
    β”œβ”€β”€ ProctorPlus/   # Django project settings
    └── ...

πŸš€ Setup Guide

Prerequisites

  • Python 3.8+
  • Node.js 14+
  • npm or yarn

Backend Setup

  1. Create and activate virtual environment:
cd ProctorPlus
python -m venv venv
# Windows
.\venv\Scripts\activate
# Unix or MacOS
source venv/bin/activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up environment variables:

    • Add env variables to .env for both frontend and backend
    • Update the values
  2. Run migrations:

python manage.py migrate
  1. Start the development server:
python manage.py runserver

Frontend Setup

  1. Install dependencies:
cd frontend
npm install
  1. Set up environment variables:

    • Add env variables to .env
    • Update values if needed
  2. Start the development server:

npm run dev

πŸ“œ Available Scripts

Backend

  • python manage.py runserver - Starts Django development server
  • python manage.py migrate - Run database migrations
  • python manage.py createsuperuser - Create admin user

Frontend

  • npm run dev - Starts Vite development server
  • npm run build - Builds the frontend for production
  • npm run lint - Runs ESLint
  • npm run preview - Preview production build locally

πŸ’» Development

  • Backend API runs on http://localhost:8000
  • Frontend development server runs on http://localhost:5173
  • Admin interface available at http://localhost:8000/admin

For documentation of specific api used in django restful architecture refer to these files:

πŸ“š Additional Documentation

About

Team Unique Minds's submission for Hack2Hire 2024

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors