A modern, robust, and highly scalable Online Exam Management System. This platform provides a seamless, secure, and fully proctored environment for institutions to conduct examinations, manage student academic records, and monitor exam integrity.
- Real-Time Exam Interface: Secure, full-screen examination environment.
- Performance Analytics: Visual graphs and statistics detailing past performance and subject strengths.
- Academic Profile: Instant access to assigned subjects, teachers, and department details.
- Exam Creation: Dynamically create question papers, assign marks, and schedule exams.
- Proctoring Suite: Real-time monitoring of active exams with automated violation flagging.
- Result Finalization: Review student submissions, finalize marks, and publish results instantly.
- Institutional Management: Complete CRUD operations for Departments, Sections, and Academic Blocks.
- User Management: Bulk-assign students to sections, manage teacher subject allocations.
- System Overview: Global visibility into all active examinations and institutional metrics.
- Tab Switching Detection: Automatically logs and flags students if they navigate away from the exam window.
- Window Blur Detection: Flags if the exam window loses focus.
- Evidence Capture: Integrates with Supabase Storage to capture and store photographic evidence during critical violations.
This project is built using a modern decoupled architecture:
- Tech: HTML5, CSS3, Vanilla JavaScript.
- Hosting: Deployed on Vercel for lightning-fast global CDN delivery.
- Design: Fully responsive, custom glassmorphism design system with dynamic micro-animations.
- Tech: Python 3.10+, FastAPI, Uvicorn, PyJWT for secure stateless authentication.
- Hosting: Deployed on Render.
- Automation: Features GitHub Actions workflows to keep the backend server and databases awake and fully responsive.
- Primary Database: MySQL 8 hosted on Aiven Cloud.
- Blob Storage: Supabase used for secure image/evidence uploads.
- Python 3.10 or higher
- MySQL Server (Local) or Aiven Cloud Database
- Supabase Project (for storage buckets)
git clone https://github.com/Pranavr06/exam-system.git
cd exam-systemcd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txtCreate a .env file in the backend/ directory:
DB_HOST=your_mysql_host
DB_USER=your_mysql_user
DB_PASSWORD=your_mysql_password
DB_NAME=your_database_name
DB_PORT=your_port
SUPABASE_URL=your_supabase_project_url
SUPABASE_KEY=your_supabase_service_role_key
SUPABASE_BUCKET_NAME=your_bucket_nameTo initialize the database schema and structure:
python update_db.pyuvicorn main:app --reload --host 0.0.0.0 --port 8000Simply open frontend/login.html in your browser. (Optionally, use an extension like VS Code Live Server to serve the files on localhost:5500). Ensure frontend/js/api.js points to http://localhost:8000 during local development.
π‘οΈ Full-Stack AI Engineer & Project Lead
- Spearheaded the overall project architecture, development, and integration.
- Designed and developed the full-stack examination management system.
- Implemented the AI-based proctoring engine using YOLOv8.
- Developed the secure backend APIs using FastAPI.
- Designed the database schema and authentication system.
- Integrated the cloud-based evidence storage pipeline using AWS S3/Supabase Storage.
- Coordinated project planning, documentation, and system deployment.
π¨ Frontend Developer
- Developed the secure examination interface and student dashboard modules.
- Implemented responsive frontend components and user workflows.
- Improved user experience and interface consistency.
- Assisted in frontend integration with backend APIs.
βοΈ Backend API Developer
- Developed backend modules using FastAPI.
- Implemented API endpoints and business logic.
- Integrated database operations and secure data handling.
- Assisted in authentication and system integration.
This repository utilizes GitHub Actions (.github/workflows/keep-system-alive.yml) to automatically ping the backend endpoints every 14 minutes. This guarantees that the Render web service, Aiven MySQL database, and Supabase project bypass aggressive free-tier sleep cycles, resulting in zero cold-start latency for end users.
π Developed as an academic project focused on secure, scalable, and AI-assisted online examination management.
This project is licensed under the MIT License.