# Architecture — Folder Structure > **Terakhir Diperbarui:** 2026-06-29 --- ## Struktur Monorepo ``` server-connection/ │ ├── README.md — Project overview + quick start ├── AGENTS.md — Aturan AI agent ├── perintah.md — Quick reference + protokol sync ├── readme.txt — SSH & deploy commands ringkas ├── rules — Requirement bisnis manual ├── rules-adv — Requirement bisnis lanjutan │ ├── geonet-console/ — Laravel 12 unified IT portal │ ├── context-index.md ← Entry point AI untuk proyek ini │ ├── DOCKGE.md ← Ringkasan deploy & env vars │ ├── .env.example ← Template env vars │ ├── compose.yaml ← Docker Compose │ ├── Dockerfile ← Multi-stage PHP 8.3 build │ ├── docker/entrypoint.sh ← Startup script │ ├── app/ │ │ ├── Http/Controllers/Api/V1/ │ │ ├── Models/ │ │ ├── Services/ │ │ └── Support/ │ ├── config/ │ ├── database/migrations/ │ ├── routes/api.php │ ├── docapi/ ← Dokumentasi API lengkap │ │ ├── README.md │ │ ├── index.md │ │ ├── authentication.md │ │ ├── common-response.md │ │ ├── common-error.md │ │ ├── integration-guide.md │ │ └── services/ │ └── resources/ │ ├── databaselist/ — Legacy Laravel (deprecated) │ ├── sqlservercheck/ — Tool cek SQL Server │ ├── scripts/ — Deploy & SSH scripts │ ├── deploy-geonet-console.ps1 │ ├── deploy-databaselist.ps1 │ ├── deploy-sqlservercheck.ps1 │ ├── deploy-geonet-console-nginx.ps1 │ ├── ssh-remote.ps1 │ ├── ssh-mikrotik.ps1 │ ├── ssh-ollama.ps1 │ ├── ssh-qnap.ps1 │ ├── ssh-zabbix.ps1 │ ├── setup-ssh-mikrotik.ps1 │ ├── cutover-geonet-console.ps1 │ ├── geonet-indexer/ ← Indexer worker scripts (Fase 4) │ └── *.ps1 / *.sh │ ├── server/ — Audit & MikroTik configs │ ├── host.md ← Daftar host & IP │ ├── ollama-nas-project-search-requirements.md │ ├── *-audit.txt ← Audit snapshot server │ ├── mikrotik-*.rsc ← MikroTik scripts │ └── nginx/ │ ├── docs/ — Dokumentasi lengkap ⭐ │ ├── context-index.md ← Entry point AI │ ├── architecture/ │ ├── api/ │ ├── adr/ │ ├── diagrams/ │ ├── onboarding/ │ └── decisions/ │ ├── .cursor/ — AI context │ ├── context-index.md │ ├── me.md ← Profil + infrastruktur │ ├── rules/ │ │ ├── 00-project-context.mdc │ │ ├── 01-enterprise-principles.mdc │ │ ├── 02-implementation-status.mdc │ │ ├── 03-ai-behavior.mdc │ │ ├── 04-geonet-uiux.mdc │ │ ├── 05-laravel-backend.mdc │ │ └── 06-infrastructure.mdc │ └── adr/ │ └── config-check.rsc — MikroTik config check script ``` --- ## Konvensi Penamaan | Tipe | Konvensi | Contoh | |------|----------|--------| | PHP file | `PascalCase.php` | `LdapAuthService.php` | | DB tabel | `snake_case` plural | `ldap_user_meta` | | Route | `/kebab-case` | `/api/v1/ldap/users` | | Script PS1 | `verb-noun.ps1` | `deploy-geonet-console.ps1` | | Doc file | `kebab-case.md` | `system-overview.md` | | ADR | `ADR-NNNN-title.md` | `ADR-0001-monorepo-structure.md` |