System Map & Module Dependencies¶
Peta modul dan dependensi antar komponen Scola.
Last verified: 2026-03-16
Frontend Module Map¶
Route Files → View Domains¶
| Route File | Lines | Domains Covered |
|---|---|---|
adminRoutes.js |
~4535 | Academic config, HR, Finance, Accounting, Inventory, SPMB, Attendance, CBT settings, Communication, Library (admin) |
teacherRoutes.js |
~500 | Schedule, Assignments, Attendance, Report Cards, CBT (question bank, exams, proctor), LMS, Counseling (homeroom), Payslip |
studentRoutes.js |
~258 | Dashboard, Schedule, Assignments, Report Cards, CBT Runner, LMS, Billing, Counseling |
counselingRoutes.js |
~598 | BK Dashboard, Violations, Achievements, Rules, Counseling sessions, Incidents, Student Leave, Extracurricular |
principalRoutes.js |
~604 | Executive Dashboard, Academics, HR, Finance, Students, Analytics, Report Cards, Inventory |
vicePrincipalRoutes.js |
~652 | Curriculum, Student Affairs, Infrastructure, Public Relations, Finance (per wakasek type) |
parentRoutes.js |
~150 | Dashboard, Children academic, Finance, Report Cards, Leave requests |
foundationRoutes.js |
~141 | Finance reports (P&L, Balance Sheet, Cash Flow, Budget), HR cost, Academic stats |
librarianRoutes.js |
~461 | Library full module |
labTechnicianRoutes.js |
~80 | Lab inventory, schedule, loans, maintenance |
spmbRoutes.js |
~109 | SPMB public portal |
View Directory → Domain Mapping¶
views/
├── AdminViews/ → Admin portal (academic config, HR, finance, inventory, SPMB, attendance)
├── FacultyViews/ → Teacher portal (dashboard, schedule, payslip, counseling)
├── StudentViews/ → Student portal (dashboard, billing, CBT, counseling)
├── ParentViews/ → Parent portal (dashboard, children)
├── Principal/ → Principal portal (executive oversight)
├── Yayasan/ → Foundation portal (financial reports)
├── CounselingManagement/ → BK module
├── LearningManagement/ → LMS module
├── ExamManagement/ → CBT module
├── ReportCardManagement/ → Report cards (multi-role)
├── AttendanceManagement/ → Attendance (multi-role)
├── AccountingManagement/ → Accounting
├── LibraryManagement/ → Library
├── ScheduleManagement/ → Timetable (multi-role)
├── AssignmentManagement/ → Assignments (multi-role)
├── AnalyticsManagement/ → Analytics dashboards
├── AdmissionManagement/ → SPMB
├── Communication/ → Announcements, notifications
├── Chat/ → Messaging
├── Calendar/ → School calendar
├── Laboran/ → Lab technician
└── BendaharaViews/ → Treasurer
Backend Module Dependency Graph¶
scola_core (base)
├── scola_parent
├── scola_lesson_hours
├── scola_timetable ← scola_lesson_hours
├── scola_lms
├── scola_report_card
├── scola_cbt
├── scola_fees
├── scola_account
├── scola_payroll
├── scola_admission
├── scola_attendance
└── scola_hr
OpenEduCat (base education framework)
├── openeducat_core ← extended by scola_core
├── openeducat_parent ← extended by scola_parent
├── openeducat_timetable ← extended by scola_timetable
├── openeducat_fees ← extended by scola_fees
├── openeducat_admission ← extended by scola_admission
├── openeducat_attendance ← extended by scola_attendance
└── openeducat_assignment ← used by scola_lms
Role → Domain Access Matrix¶
| Domain | principal | foundation | vice_principal | head_admin | treasurer | admin_staff | teacher | homeroom | counselor | librarian | lab_tech | student | parent |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Academic | ✅ view | ✅ stats | ✅ curriculum | ✅ manage | - | ✅ view | ✅ full | ✅ full | - | - | - | ✅ view | ✅ view |
| LMS | ✅ view | - | ✅ view | - | - | - | ✅ full | ✅ full | - | - | - | ✅ use | ✅ view |
| CBT | ✅ results | - | - | ✅ config | - | - | ✅ full | ✅ full | - | - | - | ✅ take | - |
| Kesiswaan | ✅ view | - | ✅ kesiswaan | - | - | - | - | ✅ partial | ✅ full | - | - | ✅ view | - |
| Keuangan | ✅ view | ✅ reports | ✅ finance | - | ✅ full | - | - | ✅ spp | - | - | - | ✅ billing | ✅ billing |
| HR | ✅ view | ✅ cost | - | ✅ full | - | ✅ partial | ✅ payslip | ✅ payslip | ✅ payslip | - | - | - | - |
| Library | - | - | - | - | - | - | ✅ reading | - | - | ✅ full | - | ✅ view | - |
| Inventory | ✅ approve | - | ✅ sarpras | - | ✅ budget | ✅ manage | - | - | - | - | ✅ lab | - | - |
| Absensi | ✅ view | - | ✅ view | - | - | ✅ manage | ✅ input | ✅ input | ✅ personal | - | - | ✅ view | ✅ view |
| SPMB | ✅ view | - | - | ✅ manage | - | ✅ manage | - | - | - | - | - | - | ✅ apply |