1. Overview
WokiEngine Dynamic Form Builder & Analytics Suite is a modern, self-hosted web application engineered for building interactive multi-step forms, collecting public form submissions, analyzing submission trends, and integrating data seamlessly via Webhooks.
2. System Requirements & Tech Stack
Ensure your hosting environment or Virtual Private Server (VPS) satisfies the following specifications:
| Component | Specification / Library | Notes / Version |
|---|---|---|
| PHP Version | PHP 8.1 / 8.2 / 8.3 / 8.4 | Fully tested up to PHP 8.4 |
| CSS Framework | Bootstrap 5.3.3 + Custom CSS | Modern UI components & Pure CSS utilities |
| PHP Extensions | intl, mbstring, mysqli, json, curl, gd |
All enabled extensions + GD WebP support |
| Database Engine | MySQL 5.7+ / MariaDB 10.3+ | MariaDB 10.6+ / MySQL 8.0+ |
| Web Server | Apache (mod_rewrite enabled) / Nginx | Nginx / Apache 2.4+ |
3. Installation Guide (cPanel / Shared Hosting)
- Upload Project ZIP: Upload the release package ZIP into your domain's root folder (e.g.,
public_html) via cPanel File Manager. - Extract Archive: Extract the contents of the ZIP file.
- Create Database: Navigate to MySQL Databases in cPanel, create a new database name, user, and assign
ALL PRIVILEGES. - Run Installer: Launch your web browser and navigate to:
https://yourdomain.com/setup - Complete Wizard: Follow the on-screen prompts to input your database credentials and set up your Superadmin account.
4. Installation Guide (VPS - Nginx / Apache)
A. Permissions & Ownership
Set appropriate folder ownership and writable permissions for storage and upload paths:
sudo chown -R www-data:www-data /var/www/dynamicform
sudo chmod -R 775 /var/www/dynamicform/writable
sudo chmod -R 775 /var/www/dynamicform/public/uploads
B. Nginx Server Block Configuration
server {
listen 80;
server_name form.yourdomain.com;
root /var/www/dynamicform/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
5. Interactive Auto Web Installer
The system features an automated, zero-config web setup wizard. The wizard handles:
- Automated database schema creation (
forms,form_submissions,users,app_settings). - Automatic
.envfile compilation and encryption keys. - Superadmin account initialization with timezone support.
6. Form Builder Usage
- Log in to the Admin Dashboard (
/login). - Click Build New Form from the side navigation.
- General & Access Controls (Left Panel): Configure Form Title, Custom URL Slug, Webhook Destination, Response Limit, Expiration Date, Notification Emails, and IP Restriction options.
- Form Field Builder (Right Panel): Add input fields dynamically (Text, Email, Number, Textarea, Dropdowns, Radio Buttons, Checkboxes, Date, Time).
- Click Save & Publish Form to make the form public.
7. Webhook Engine Integration
Public submissions dispatch non-blocking HTTP POST JSON payloads instantly to third-party endpoints, webhooks, CRMs, or automation tools (Zapier, Make, n8n).
8. Masked URL & Security
Numeric database IDs are obfuscated across public forms, submission receipts, and exports using **Custom URL Slugs** and **SHA-256 Identifiers** to prevent URL enumeration vulnerabilities.
1. Gambaran Umum
WokiEngine Dynamic Form Builder & Analytics Suite adalah platform aplikasi pembuat formulir interaktif mandiri (*self-hosted*) yang dirancang fleksibel, aman, dan efisien. Sistem ini memungkinkan pengguna membangun formulir *step-by-step wizard*, mengumpulkan respon tanggapan publik, menganalisis tren aktivitas submission, serta mengintegrasikan data ke pihak ketiga melalui Webhook Engine.
2. Persyaratan Sistem & Stack Teknologi
Pastikan server hosting atau VPS Anda memenuhi spesifikasi minimal berikut:
| Komponen | Spesifikasi / Pustaka | Catatan / Versi |
|---|---|---|
| Versi PHP | PHP 8.1 / 8.2 / 8.3 / 8.4 | Teruji penuh hingga PHP 8.4 |
| Framework CSS | Bootstrap 5.3.3 + Custom CSS | Komponen UI modern & utilitas Pure CSS |
| Ekstensi PHP | intl, mbstring, mysqli, json, curl, gd |
Semua ekstensi aktif + Dukungan GD WebP |
| Engine Database | MySQL 5.7+ / MariaDB 10.3+ | MariaDB 10.6+ / MySQL 8.0+ |
| Web Server | Apache (mod_rewrite aktif) / Nginx | Nginx / Apache 2.4+ |
3. Panduan Instalasi (cPanel / Shared Hosting)
- Unggah Berkas ZIP: Unggah seluruh berkas zip aplikasi ke dalam direktori domain utama (misal:
public_html) via cPanel File Manager. - Ekstrak Berkas: Ekstrak berkas ZIP tersebut.
- Buat Database MySQL: Buka menu MySQL Databases di cPanel, buat nama database baru, buat pengguna MySQL baru beserta password, lalu hubungkan pengguna tersebut ke database dengan memberikan hak akses
ALL PRIVILEGES. - Akses Web Installer: Buka browser Anda dan akses alamat URL domain/subdomain Anda:
https://domainanda.com/setup - Jalankan Wizard: Ikuti petunjuk di layar untuk memasukkan kredensial database dan membuat akun Superadmin pertama.
4. Panduan Instalasi (VPS - Nginx / Apache)
A. Hak Akses Folder
Atur hak kepemilikan direktori dan izin folder writable serta public/uploads:
sudo chown -R www-data:www-data /var/www/dynamicform
sudo chmod -R 775 /var/www/dynamicform/writable
sudo chmod -R 775 /var/www/dynamicform/public/uploads
B. Konfigurasi Nginx Server Block
server {
listen 80;
server_name form.domainanda.com;
root /var/www/dynamicform/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
5. Interactive Auto Web Installer
Sistem ini dilengkapi dengan **Auto Web Installer** interaktif. Setelah konfigurasi database selesai pada langkah awal, installer akan secara otomatis:
- Membangun seluruh skema tabel database (
forms,form_submissions,users,app_settings). - Mengonversi berkas lingkungan
.envsecara otomatis. - Membuat akun Superadmin pertama beserta pengaturan zona waktu aplikasi.
6. Cara Penggunaan Form Builder
- Masuk ke Panel Admin (
/login). - Klik menu Build New Form di Sidebar.
- Pengaturan Umum & Akses (Kolom Kiri): Masukkan Judul Form, URL Slug Khusus, Webhook URL, Batas Kuota Respon, Waktu Kedaluwarsa, Notifikasi Email Admin, dan opsi Batasi 1x Respon per Alamat IP.
- Penyusun Bidang Form (Kolom Kanan): Klik tombol
Tambah Bidanguntuk menambahkan input dinamis seperti Teks, Email, Angka, Textarea, Select Dropdown, Radio Button, Checkbox, Date, dan Time. - Klik Simpan & Terbitkan Form untuk mempublikasikan formulir.
7. Integrasi Webhook Engine
Setiap jawaban yang dikirimkan oleh pengguna publik dapat diteruskan secara instan (*real-time*) ke server Anda, sistem CRM, atau platform otomatisasi (Zapier/Make/n8n) melalui pengiriman HTTP POST JSON Payload non-blocking.
8. Masked URL & Keamanan
Sistem menyamarkan ID numerik internal database pada tautan publik, ekspor laporan, dan halaman tanggapan menggunakan **URL Slug** atau **SHA-256 Hash Identifier** untuk mencegah *enumeration attack* dan meningkatkan keamanan sistem secara menyeluruh.