How razannabilwebdev/aplikasiujian works
This repository is a Laravel-based computer-based testing application. The visible student workflow is login, browse open exams and session history, join with an exam token, take the exam with server-backed answers and session checks, then submit; dashboards expose role-specific summaries. The sampled service confirms idempotent session creation, answer seeding, violation recording and submission. The tree also shows browser-side autosave, timer and guard modules. Management workflows are not represented by sampled controllers, so the graph does not infer exam-authoring behavior or unverified route wiring.
Main entry points: EntryController.php Exam entry · DashboardController.php Role dashboards · SessionController.php Session endpoints · Models Exam and user records
Components 16
Access and dashboards
- Login
app/Http/Controllers/Auth/LoginController.php - Role dashboards
app/Http/Controllers/DashboardController.php - Dashboard views
resources/views/dashboard - Role and session guards
app/Http/Middleware
Exam sessions
- Exam entry
app/Http/Controllers/Exam/EntryController.php - Room page
app/Http/Controllers/Exam/RoomController.php - Session endpoints
app/Http/Controllers/Exam/SessionController.php - Session rules
app/Services/ExamSessionService.php - Exam access policy
app/Policies/ExamPolicy.php - Exam list and history
resources/views/exam/index.blade.php - Exam room view
resources/views/exam/room.blade.php
Exam client
- Exam browser modules
resources/js/exam - Browser app entry
resources/js/app.js
Domain data
- Exam and user records
app/Models
Other components
- Student
- Admin or teacher
Connections 20
- Student → Login: signs in
- Admin or teacher → Login: signs in
- Login → Role dashboards: redirects by role
- Student → Exam entry: browses and joins
- Exam entry → Exam access policy: checks eligibility
- Exam entry → Session rules: starts session
- Exam entry → Exam and user records: reads exams and sessions
- Exam entry → Exam list and history: renders list
- Student → Room page: opens session
- Room page → Exam room view: renders room
- Exam room view → Exam browser modules: loads client behavior
- Exam browser modules → Session endpoints: sends session requests
- Session endpoints → Session rules: delegates session rules
- Session rules → Exam and user records: reads and writes records
- Session endpoints → Exam and user records: reads session state
- Admin or teacher → Role dashboards: opens dashboard
- Student → Role dashboards: opens dashboard
- Role dashboards → Exam and user records: reads summary data
- Role dashboards → Dashboard views: renders by role
- Role and session guards → Session endpoints: guards endpoints