تفاصيل العمل

Project Title: Advanced Online Exam System with Admin Dashboard

Work Type: Full-Stack Exam Management Platform (Firebase-Powered)

Description:

A comprehensive real-time exam system with two integrated components: an admin dashboard for exam management and a secure student interface with anti-cheat protection. Built with vanilla JavaScript, Firebase Realtime Database, and modern CSS3.

System Components:

1. Admin Dashboard

Key Features:

✅ Multi-admin authentication with role-based access

✅ Create/edit/delete 5 question types (MCQ, Multiple Choice, True/False, Matching, Essay)

✅ Live statistics dashboard with animated counters

✅ 200+ access code management system

✅ Exam settings (timer modes, anti-cheat, camera proctoring)

✅ Detailed results review with manual grading

✅ Profile management with photo upload

✅ Export results/codes to CSV

✅ Real-time Firebase synchronization

2. Student Exam Interface

Key Features:

✅ Secure one-time access code validation

✅ 5 question types with dynamic rendering

✅ Dual timer system (per-question / full exam)

✅ Advanced anti-cheat (tab detection, devtools blocking, fullscreen enforcement)

✅ Camera proctoring with periodic snapshots

✅ Animated progress tracking

✅ Auto-submit on timeout

✅ Violation detection with instant termination

✅ Smooth fade animations between screens

Implementation:

Phase 1: Firebase Setup

Initialize Realtime Database with data structure (admins, questions, results, codes, settings)

Real-time listeners for live updates

Async data loading with error handling

Phase 2: Admin Dashboard

Login authentication system

Dynamic question form based on type

Image upload with base64 encoding (5MB limit)

Statistics calculation with animated counters

Results table with sortable columns

Manual score adjustment modal

CSV export functionality

Phase 3: Student Interface

Access code validation & marking as used

Progressive question display with timers

Question type rendering (radio, textarea, dropdown)

Answer auto-save on selection/timeout

Camera permission & snapshot capture (JPEG compressed)

Phase 4: Anti-Cheat System

javascriptDetections:

- Tab switching (visibilitychange)

- Window blur/focus loss

- Screen resize/split detection

- DevTools detection (window size differential)

- Keyboard blocking (F12, Ctrl+C/V/X/A/P/S/U)

- Right-click & copy/paste prevention

```

**Phase 5: Results Processing**

- Score calculation

- Answer history storage

- Violation logging

- Snapshot upload to Firebase

- Completion screen display

---

## **Technologies:**

**Frontend:** HTML5 • CSS3 (Animations, Grid, Flexbox) • JavaScript ES6+

**Backend:** Firebase Realtime Database • Firebase SDK v10.7.1

**Security:** One-time codes • Camera proctoring • Anti-cheat detection

**Data Structure:**

```

Firebase:

├── admins/ (name, username, password, role, photo)

├── questions/ (type, text, choices, timeout, image)

├── results/ (score, answers, violations, snapshots)

├── accessCodes/ (used, usedBy, usedAt)

├── examSettings/ (timer, antiCheat, camera)

└── quizState/ (isActive)

Key Features:

? Real-time Sync - Live updates across all sessions

? Dual Timer Modes - Per-question OR full exam

? Smart Matching - Randomized options

? Violation Logs - Detailed timestamps

? Compressed Snapshots - Efficient JPEG storage

? Smooth Animations - Fade transitions

? Manual Grading - Post-submission score adjustment

? Bulk Code Reset - Selective reactivation

? Multi-Question Types - MCQ, Essay, Matching, True/False

Workflow:

Admin: Login → Create questions → Configure settings → Generate codes → Open exam → Monitor results → Review answers → Export data

Student: Enter code → Camera permission → Answer questions → Timer countdown → Auto-submit → Results uploaded

Deliverables:

✅ 2 HTML files (Admin + Student)

✅ Firebase real-time integration

✅ 5 question types with dynamic forms

✅ Anti-cheat mechanism

✅ Camera proctoring system

✅ Results export (CSV)

✅ Responsive design

✅ Production-ready code

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
1
تاريخ الإضافة
تاريخ الإنجاز
المهارات