-
Notifications
You must be signed in to change notification settings - Fork 0
Panduan Pengembang
nunohadianto edited this page May 29, 2026
·
1 revision
Panduan ini ditujukan bagi pengembang yang ingin memodifikasi kode program, menambahkan fitur database baru, atau mengompilasi rilis installer QurbanApp.
- Node.js: Versi LTS terbaru (direkomendasikan v20 ke atas).
- Git: Untuk mengelola repositori kode.
-
C++ Build Tools (Windows): Karena driver basis data menggunakan
better-sqlite3yang memerlukan kompilasi biner C++ native.-
Solusi Cepat: Jalankan PowerShell sebagai Administrator lalu ketik
npm install --global windows-build-tools - Alternatif: Pasang Visual Studio Build Tools dengan opsi Desktop development with C++.
-
Solusi Cepat: Jalankan PowerShell sebagai Administrator lalu ketik
- Clone repositori utama:
git clone https://github.com/Nuno-Hadianto/QurbanApp.git cd QurbanApp - Pasang semua paket dependensi:
npm install
- Jalankan aplikasi dalam mode pengembangan:
npm start
Sistem ini menggunakan IPC aman dengan pembagian tugas sebagai berikut:
-
Database Service Layer (service.js):
Menyusun query database SQLite dan mengembalikan data.
function listHewan(q = '') { ... }
-
IPC Handler (main.js):
Menerima panggilan asinkron dari jendela utama. Operasi mutasi database dibungkus dengan
secureHandle.ipcMain.handle('hewan:list', async (_, q) => service.listHewan(q));
-
Preload Bridge (preload.js):
Mengekspos API secara terkontrol ke frontend agar terhindar dari kerentanan keamanan akses node langsung.
contextBridge.exposeInMainWorld('api', { listHewan: (q) => ipcRenderer.invoke('hewan:list', q), });
-
Frontend DOM Control (app.js):
Memanggil API jembatan untuk me-render data ke elemen HTML.
state.hewan = await window.api.listHewan(q);
Aplikasi dikompilasi menggunakan electron-builder. Untuk membuat berkas instalasi mandiri Windows:
- Bersihkan folder build dist lama:
npm run clean
- Lakukan kompilasi pembuatan installer baru:
npm run build
- Installer siap pakai akan tersimpan di dalam folder
dist/dengan nama berkasQurbanAppSetup.exe.
Repositori dikonfigurasi dengan alur GitHub Actions pada berkas .github/workflows/build.yml:
- Setiap kali Anda menaruh tag baru (contoh
git tag v1.0.0dangit push origin v1.0.0), runner GitHub Actions di cloud (windows-latest) akan otomatis mengompilasi berkas rilis dan mempublikasikannya langsung ke halaman GitHub Releases proyek Anda.