Panduan Instalasi PikoCS (Composer)
& Cara Menyisipkan WA Bubble ke Web Klien
PikoCS dibangun dengan CodeIgniter 4.7.5, target runtime PHP 8.3.28 dan
MySQL 8.4.7. Ikuti 6 langkah di bawah — dari composer install
sampai widget WhatsApp mengambang tampil di website klien Anda.
0 Persyaratan Server
PikoCS berjalan di VPS, cloud instance, shared hosting modern, atau Docker. Spesifikasi minimum:
Software
- PHP 8.3 (direkomendasikan 8.3.28) dengan ekstensi:
intl, mbstring, curl, json, xml, mysqlnd, zip - MySQL 8.4.7 (atau MariaDB 10.11+ kompatibel)
- Composer 2.x untuk dependensi PHP
- Web server Apache (mod_rewrite) / Nginx, atau
php spark serveuntuk dev
Hardware minimum
- 1 vCPU / 1 GB RAM (nyaman: 2 vCPU / 2 GB)
- Disk 2 GB (log chat tumbuh ± 1 MB per 1.000 pesan)
- Akses keluar HTTPS ke
pikoai.gayamapp.cloud(gateway AI) - Sertifikat SSL (Let's Encrypt gratis) — wajib untuk widget di web klien
Cek versi cepat: php -v,
mysql --version,
composer -V.
Debian/Ubuntu: sudo apt install php8.3-cli php8.3-mysql php8.3-intl php8.3-mbstring php8.3-curl php8.3-xml php8.3-zip mysql-server composer
1 Install dengan Composer
Unduh paket PikoCS (zip dari vendor atau repositori Git Anda), ekstrak, lalu install dependensi — CodeIgniter 4.7.5 akan ditarik otomatis sesuai composer.lock:
Ingin mulai dari kerangka CI4 baru lalu menimpa dengan kode PikoCS? Bisa juga:
Struktur penting proyek:
2 Konfigurasi .env
Lalu sesuaikan bagian-bagian berikut:
Jangan commit .env ke Git! File ini berisi API key & password database. Pastikan juga writable/ dapat ditulis (chmod 775, owner user web server).
3 Database MySQL 8.4.7 + Migrasi
Buat database & user khusus PikoCS (MySQL 8.4 memakai plugin autentikasi caching_sha2_password secara default — didukung driver MySQLi PHP 8.3):
Jalankan migrasi (membuat 4 tabel: widget_keys, chat_sessions, chat_messages, leads) lalu seed data demo:
Buat widget key untuk klien pertama Anda:
Kolom store_context = "Buku Pintar Toko" yang disuntikkan ke system prompt AI. Semakin lengkap (produk, harga, kebijakan, gaya bahasa), semakin pintar jawaban AI-nya. Bisa diupdate kapan saja langsung di tabel widget_keys.
4 API Key Gateway PikoAI
Mesin AI PikoCS adalah gateway PikoAI (kompatibel format OpenAI). Isi pikoai.apiKey di .env dengan key Anda. Uji dulu langsung dengan cURL:
Key terisi → mode live
Setiap chat klien diteruskan PikoCS ke gateway PikoAI lengkap dengan persona + Buku Pintar Toko + riwayat percakapan. Jawaban AI asli, header respons X-PikoCS-Mode: live.
Key kosong / gateway error → mode fallback
Agar widget klien tidak pernah "mati", PikoCS membalas dengan mesin demo cerdas lokal (pikoai.demoFallback = true). Matikan bila ingin error tegas: set false.
5 Menjalankan Aplikasi
Development — server bawaan CI4:
Produksi (Nginx) — document root HARUS ke folder public/:
Produksi (Apache) — arahkan DocumentRoot vhost ke public/; .htaccess rewrite sudah tersedia di dalamnya. Aktifkan mod_rewrite dan pastikan AllowOverride All.
Setelah jalan, verifikasi cepat:
6. Menyisipkan WA Bubble ke Web Klien
WA bubble adalah tombol WhatsApp hijau mengambang di pojok kanan bawah website yang, saat diklik,
membuka panel chat AI PikoCS (bukan bot menu kaku). Klien cukup menempel
satu baris script — semua tampilan & logika di-inject otomatis oleh bubble.js,
tanpa dependensi jQuery/Bootstrap dan tanpa bentrok dengan CSS website klien.
6.1 — Snippet wajib (tempel sebelum </body>)
Ganti WIDGET_KEY_KLIEN dengan key hasil php spark pikocs:key (langkah 3).
Untuk mencoba cepat tanpa key sendiri, pakai demo key: pk-demo-pikocs-2026
— bubble di halaman PikoCS ini pun memakainya (lihat pojok kanan bawah 👇).
6.2 — Kustomisasi lewat atribut data-* (semua opsional)
| Atribut | Default | Fungsi |
|---|---|---|
| data-key | — (wajib) | Widget key klien; menentukan persona AI, Buku Pintar Toko & branding |
| data-title | nama toko dari server | Judul header panel chat |
| data-greeting | salam default | Pesan pembuka otomatis dari AI saat panel dibuka |
| data-color | #25D366 | Warna tema bubble & header (hijau WhatsApp) |
| data-position | right | Posisi mengambang: right / left |
| data-wa-number | dari server (opsional) | Menampilkan tombol "Lanjut ke WhatsApp" (deep-link wa.me) — mis. untuk order yang butuh manusia di sisi toko |
| data-tooltip | kosong | Tooltip ajakan di samping bubble (muncul beberapa detik) |
| data-server | asal URL script | Override URL server PikoCS bila bubble.js di-host terpisah (CDN klien) |
6.3 — Contoh di berbagai platform
HTML statis / landing page
WordPress