How ujjaldas-11/online-exam-system works
Examify is a LAN-focused college examination platform. Its main workflow runs from faculty curriculum and question-bank setup, through exam scheduling and student timed attempts, to automated grading and published results with review. Administration also covers cohorts, faculty, audit and live proctoring; students register, manage profiles and retrieve scorecards. The graph includes security, database and real-time layers, plus documented CSV/XLSX and PDF capabilities. Several portal implementations were not sampled, so links between those features are limited to documented behavior; the database is shown as shared state, not as a guessed schema.
Main entry points: admin-dashboard.php Administration · exam.php Exam Session · ExamEngine.php Exam Engine · Server.php WebSocket & IPC
Components 26
User Portals
- Administration
admin/admin-dashboard.php - Question Bank
admin/manage-questions.php - Curriculum Setup
admin/manage-subjects.php - Exam Scheduling
admin/manage-exam.php - Cohort Management
admin/manage-students.php - Live Proctoring
admin/proctor-exam.php - Student Access
student/login.php - Exam Discovery
student/check-exams.php - Exam Session
student/exam.php - Results & Review
student/review-exam.php - PDF Export Route
admin/export-pdf.php - Student Scorecard
student/download-card.php
Exam Domain
- Exam Engine
services/ExamEngine.php - Curriculum Service
services/CurriculumService.php - Database Connection
config/database.php - MySQL Database
Integrity & Realtime
- Authentication & RBAC
utils/auth.php - Device & Integrity
utils/device.php - Violation Logging
student/log-violation.php - Realtime Daemon Entry
bin/websocket-server.php - WebSocket & IPC
lib/websocket/Server.php - Event Push Helper
utils/websocket-pusher.php
Exports & Results
- CSV & XLSX Operations
services/CsvService.php - PDF Generation
services/PdfService.php
Other components
- Faculty & Admin
- Student Candidate
Connections 28
- Faculty & Admin → Administration: uses
- Administration → Curriculum Setup: manages curriculum
- Administration → Question Bank: manages questions
- Administration → Exam Scheduling: schedules exams
- Administration → Cohort Management: manages cohorts
- Exam Scheduling → Exam Engine: exam operations
- Curriculum Setup → Curriculum Service: curriculum access
- Question Bank → CSV & XLSX Operations: imports and exports
- Student Candidate → Student Access: signs in
- Student Access → Authentication & RBAC: checks identity
- Exam Discovery → Exam Session: starts attempt
- Exam Session → Device & Integrity: checks device
- Exam Session → Exam Engine: saves answers
- Exam Engine → MySQL Database: reads and writes
- Curriculum Service → MySQL Database: reads curriculum
- Authentication & RBAC → MySQL Database: checks sessions and roles
- Exam Engine → Results & Review: provides review data
- Results & Review → PDF Generation: generates answer sheet
- PDF Export Route → PDF Generation: generates reports
- Student Scorecard → PDF Generation: generates scorecard
- Administration → Live Proctoring: opens monitoring
- Live Proctoring → WebSocket & IPC: monitors sessions
- Realtime Daemon Entry → WebSocket & IPC: starts daemon
- Event Push Helper → WebSocket & IPC: pushes IPC events
- Violation Logging → Event Push Helper: sends alerts
- Exam Session → Violation Logging: reports violations
- WebSocket & IPC → Student Candidate: broadcasts updates
- Database Connection → MySQL Database: connects