Introduction
Ringkasan
Sutomo School Management adalah platform administrasi sekolah multi-tenant dengan arsitektur modular monolith. Semua kode dalam satu repositori tapi diorganisir per domain (Academic, Recruitment, Financial, dll).
Stack Teknologi
| Layer | Teknologi | Tujuan |
|---|---|---|
| Server | FrankenPHP (Caddy + PHP 8.4) | HTTP server + Laravel Octane |
| Backend | Laravel 13 + Octane | Framework, API, logika bisnis |
| Frontend (Publik) | Inertia.js v3 + Svelte 5 + Tailwind v4 | Halaman publik |
| Admin Panel | Filament v5 | Admin CRUD |
| Database | PostgreSQL | Penyimpanan data |
| Cache / Queue | Redis + Horizon | Session, cache, job queue |
| Monitoring | Prometheus + Loki + Grafana | Metrik, log, dashboard |
Struktur Folder
app/ → Kode aplikasi Laravel
bootstrap/ → Middleware registration
config/ → Konfigurasi
database/ → Migrations + seeders (versi direktori)
docs/ → Sumber dokumentasi Vitepress
lang/ → File lokalisasi (en.json, id.json)
resources/
js/ → Frontend Svelte
components/ → Atomic design components
modules/ → Modul fitur (stores, services, api)
pages/ → Inertia page components
routes/ → Route definitions (api/, web/)
tests/ → Unit, Feature, E2E testsOrganisasi Domain
Model dan resource diorganisir per domain:
Academic/ Recruitment/ Financial/ Geographic/
Institution/ Platform/ News/ Organization/
Support/ Assistant/ ContractManagement/File Penting
| File | Tujuan |
|---|---|
bootstrap/app.php | Middleware registration |
docker-compose.yml | Layanan dev (PostgreSQL, Redis, MinIO) |
vite.config.ts | Build Vite + Inertia + Wayfinder |
phpunit.xml | Konfigurasi PHPUnit |