phpVB

Platform aplikasi digital pemerintahan yang dirancang untuk kondisi nyata di lapangan.


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.


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 tidak perlu membuat keputusan arsitektur dari nol setiap kali membangun fitur baru.

Dampaknya: onboarding developer baru lebih cepat, kualitas antar modul konsisten, dan risiko kesalahan arsitektur berkurang.

2. Siap di Berbagai Kondisi Infrastruktur

phpVB dirancang agar bisa berjalan dalam tiga tingkat kesiapan infrastruktur:

Tingkat Kondisi Penyimpanan Data Cocok Untuk
Mandiri Tanpa database server File teks (XML & JSON) Prototipe, demo, 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 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, Banyak Layanan

Satu instalasi phpVB bisa melayani banyak domain sekaligus, masing-masing dengan halaman utama dan database yang berbeda.

Contoh: satu server menjalankan phpVB, melayani tiga kabupaten/kota:

Domain Halaman Utama Database
bandung.kota2.web.id Subsidi BBM gov2_bandung
sumenep.kab.web.id SDI (Satu Data Indonesia) gov2_sumenep
jabar.prov.web.id Home gov2_jabar

Setiap domain otomatis diarahkan ke halaman dan database yang tepat — kode aplikasinya tetap sama untuk semua domain.

Keuntungan dibanding instalasi terpisah per daerah:

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

Cukup daftarkan domain di file konfigurasi, phpVB yang mengatur sisanya.

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. Domain pengembangan masuk config.dev.xml, domain produksi masuk config.prod.xml. 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. Ini menghilangkan risiko "di komputer saya jalan, di server tidak."

Mau tambah lingkungan baru (misalnya staging)? Cukup buat file config.staging.xml — tanpa mengubah kode.


Modul Bawaan

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

Modul Fungsi
Login & Akun Otentikasi pengguna, pendaftaran, profil, SSO
Wilayah Hierarki wilayah administratif (provinsi, kabupaten, kecamatan, kelurahan)
Instansi Struktur organisasi dan unit kerja
Pengaturan Konfigurasi aplikasi per-modul

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


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) 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.


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