You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.9 KiB
3.9 KiB
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 |