phpVB

Platform aplikasi digital pemerintahan yang dirancang untuk kondisi nyata di lapangan — dan siap dikerjakan bersama agen AI.

Dipakai menjalankan 633 portal instansi di *.gov3.id dari satu basis kode. Lihat juga Sandbox untuk arsitektur platform tempat phpVB berjalan.

Diperbarui Oktober 2026 — versi terbaru v5.1.11.


Mengapa phpVB?

Digitalisasi pemerintahan menghadapi tantangan yang berbeda dari sektor swasta. Infrastruktur tidak selalu tersedia merata, kapasitas teknis tim bervariasi, dan kebutuhan bisa berubah seiring pergantian kepemimpinan. phpVB dibangun untuk menjawab tantangan-tantangan ini.

Kini ada tantangan baru: agen AI ikut membangun dan menjalankan aplikasi. phpVB dirancang supaya setiap aplikasi bisa dibaca, diuji, dan dikembangkan oleh agen — dengan manusia tetap memegang keputusan.


Prinsip Desain

1. Konvensi di Atas Konfigurasi

Setiap aplikasi baru mengikuti pola yang sama — struktur folder, penamaan file, alur data — semuanya sudah ditentukan oleh framework. Developer (manusia maupun agen AI) tidak perlu membuat keputusan arsitektur dari nol setiap kali membangun fitur baru.

Dampaknya: onboarding developer baru lebih cepat, kualitas antar modul konsisten, risiko kesalahan arsitektur berkurang — dan agen AI bisa membangun modul yang benar karena polanya baku.

2. Siap di Berbagai Kondisi Infrastruktur

phpVB berjalan dalam tiga tingkat kesiapan infrastruktur:

Tingkat Kondisi Penyimpanan Data Cocok Untuk
Mandiri Tanpa database server File teks (CSV, JSON, XML, Markdown) Prototipe, demo, konten statis, daerah dengan keterbatasan server
Database Lokal Database di server sendiri MySQL/MariaDB Instansi yang sudah punya data center atau server lokal
Database Cloud Database cloud via API PostgreSQL (Supabase) Instansi yang ingin skalabilitas dan kolaborasi antar-wilayah

Satu basis kode yang sama bisa berjalan di ketiga kondisi. Ketika infrastruktur ditingkatkan, aplikasi tidak perlu ditulis ulang — cukup ubah sumber datanya.

3. Pemisahan Tanggung Jawab yang Jelas

phpVB memisahkan kerangka dan isi secara tegas:

  • Kerangka (layout, navigasi, keamanan, hak akses) diproses di server — konsisten dan terkontrol
  • Isi (data, formulir, interaksi pengguna) diproses di browser — responsif dan interaktif

Analoginya seperti gedung kantor pemerintahan: struktur bangunan (dinding, koridor, pintu keamanan) sudah fixed dan dikelola oleh pengelola gedung, sementara isi ruangan (meja, kursi, peralatan kerja) diatur fleksibel oleh masing-masing unit yang menempati.

Dampaknya:

  • Tim desain tampilan dan tim pengembang data bisa bekerja paralel tanpa saling menunggu
  • Perubahan tampilan tidak mempengaruhi logika data, dan sebaliknya
  • Keamanan terjaga di level server — tidak bergantung pada browser pengguna

4. Multi-Domain: Satu Sumber, Ratusan Portal

Satu instalasi phpVB melayani banyak domain sekaligus, masing-masing dengan halaman utama, konten, dan database sendiri. Di Gov3.id, satu instalasi melayani 633 portal pemerintah daerah dan K/L:

Domain Jenis Database
kemenpanrb.gov3.id Kementerian/Lembaga database portal sendiri
kukarkab.gov3.id Kabupaten database portal sendiri
bandungkota.gov3.id Kota database portal sendiri

Data rujukan bersama (wilayah, instansi) disimpan sekali di database pusat dan dibaca setiap portal lewat view — tanpa salinan yang bisa saling berbeda.

Keuntungan dibanding instalasi terpisah per daerah:

  • Update framework sekali, semua domain ikut
  • Perbaikan bug satu deploy, selesai
  • Tidak perlu mengelola ratusan instalasi terpisah

Konten pun bisa dibedakan per portal tanpa menyalin kode: berkas konten di folder bernama portal (mis. md/kukarkab/) otomatis dipakai menggantikan konten umum.

5. Multi-Staging Otomatis

phpVB mengenali lingkungan kerja secara otomatis berdasarkan konvensi:

Cara Deteksi Lingkungan Keterangan
Domain localhost Lokal Otomatis, untuk pengembangan di komputer developer
Domain terdaftar di config.dev.xml Pengembangan Domain dev didaftarkan di file config dev
Domain terdaftar di config.prod.xml Produksi Domain prod didaftarkan di file config prod
Domain belum terdaftar Pengembangan Fallback aman untuk domain baru

Prinsipnya sederhana: taruh domain di file konfigurasi yang sesuai lingkungannya. phpVB mendeteksi lingkungan dari file mana yang memuat domain tersebut — tanpa konfigurasi tambahan.

Setiap lingkungan bisa memiliki sumber data dan tingkat keamanan yang berbeda, namun kode aplikasinya tetap sama. Mau tambah lingkungan baru (misalnya staging)? Cukup buat file config.staging.xml — tanpa mengubah kode.

6. Tema Tampilan per Portal dan per Aplikasi

Tampilan dipisah dari logika lewat template Twig. Tema bawaan:

Tema Kegunaan
Cube Tema admin bawaan (Bootstrap 5)
Gelap Varian gelap Cube
Sarab Halaman publik/landing dengan panel agen AI
Landing Page, Coming Soon, Stylish Portfolio Halaman publik satu-halaman

Tema dipilih per portal, dan sejak v5.1.10 per aplikasi — dua aplikasi dalam satu portal boleh berkulit berbeda. Template Bootstrap baru dapat diporting menjadi tema tanpa mengubah aplikasi.


Siap Dikerjakan Bersama Agen AI

phpVB menyediakan antarmuka yang membuat aplikasi bisa dipahami dan dijalankan agen AI, dengan batas yang jelas:

Kemampuan Penjelasan
Artefak per modul Setiap MVC menerbitkan dokumennya sendiri di /{app}/{mvc}/artefak: readme, kontrak API (manifes), catatan rilis, salinan spesifikasi (spek), dan berkas sumber
Spesifikasi berbasis tiket Aplikasi dibangun dari spesifikasi yang ditulis di tiket; agen membangun MVC dari pola baku, memvalidasinya, lalu melaporkan hasil di tiket
Sesi atas nama pengguna Agen menjalankan perintah aplikasi sebagai pengguna yang login — dengan peran dan hak akses pengguna itu, bukan akun super
Pemeriksaan data baca-saja Endpoint agen untuk memastikan hasil simpan di database tanpa akun database baru dan tanpa hak tulis
Klien MCP Aplikasi dapat mengimpor data dari layanan MCP (mis. lewat gerbang Gurita)
Panel samping agen Asisten AI (Kakatua, Kancil) terbuka di panel samping portal, dengan akun SSO yang sama; halaman dapat mengirim pertanyaan langsung ke agen

Alat pengembang pendampingnya — gov3phpvb — memetakan aplikasi phpVB yang sudah ada menjadi pola baku, lalu menyediakan generator, validator, dan uji otomatis sebagai alat MCP dan skill agen. Inilah yang dipakai agen Kancil saat membangun aplikasi dari spesifikasi.


Modul Bawaan

phpVB menyediakan modul-modul dasar yang dibutuhkan hampir semua aplikasi pemerintahan:

Modul Fungsi
Login & Akun Otentikasi pengguna, pendaftaran, profil, SSO (Beo)
Wilayah Hierarki wilayah administratif (provinsi, kabupaten, kecamatan, kelurahan)
Instansi Struktur organisasi dan unit kerja, termasuk filter konteks instansi/wilayah
Pengaturan Konfigurasi aplikasi per-modul, dengan rantai sumber (file → database → cloud) dan impor dari layanan Gov3
Survei Kuesioner dan formulir online
Pipe Pipeline dan pengolahan data
Komponen Tabel, formulir, navigasi, pencarian, notifikasi, chat — siap dipakai ulang

Modul-modul ini sudah siap pakai dan bisa diperluas sesuai kebutuhan spesifik instansi.


Teknologi

Lapisan Teknologi
Runtime PHP 8.4
Template Twig 3
Frontend Vue 3 + Vite, Bootstrap 5 (tanpa jQuery)
Database MySQL/MariaDB, PostgreSQL via Supabase, atau file teks
Otentikasi JWT + SSO (Beo, Google)
Kualitas kode PHPUnit, PHPStan, PHP CS Fixer

Garis rilis: portal produksi berjalan di garis stabil v5.0.x; aplikasi dan portal baru memakai garis v5.1.x (frontend modern). Rilis terbaru: v5.1.11 (Oktober 2026).


Keunggulan untuk Instansi Pemerintah

Tidak terkunci vendor — phpVB adalah framework open-source, bukan layanan berlangganan. Instansi memiliki kendali penuh atas kode dan data.

Investasi bertahap — Mulai dari mode mandiri (tanpa database), lalu tingkatkan ke database lokal atau cloud seiring kesiapan anggaran dan SDM.

Standar terbuka — Dibangun di atas teknologi standar industri (PHP, MySQL, PostgreSQL, Vue.js, Bootstrap) yang diajarkan di universitas dan tersedia tenaga kerjanya secara luas di Indonesia.

Keamanan terintegrasi — Sistem hak akses, otentikasi, dan SSO sudah tertanam dalam framework — bukan tambahan di kemudian hari. Agen AI pun tunduk pada hak akses yang sama dengan pengguna.

Siap era AI — Aplikasi yang dibangun dengan phpVB dapat dikembangkan dari spesifikasi oleh agen AI, dengan jejak yang dapat diaudit: tiket, kode, dan dokumen per modul.


Dokumentasi Teknis

Untuk tim pengembang, dokumentasi teknis lengkap tersedia di phpVB Wiki.


Lisensi

phpVB dirilis di bawah MIT License — lisensi open-source yang paling permisif dan banyak digunakan di dunia.

Artinya:

  • Bebas digunakan untuk proyek apapun, termasuk proyek pemerintahan
  • Bebas dimodifikasi sesuai kebutuhan instansi tanpa harus meminta izin
  • Bebas didistribusikan ke pihak lain, termasuk vendor dan mitra kerja
  • Aplikasi yang dibangun di atas phpVB boleh menggunakan lisensi berbeda — misalnya GPL untuk aplikasi pemerintahan yang dibangun dengan APBN, sesuai ketentuan yang berlaku

Satu-satunya syarat: mencantumkan notice hak cipta asli phpVB di dalam kode sumber.

Kontak

Wibisono Sastrodiwiryo — wibi@alumni.ui.ac.id