smart_sppg — ERP Koperasi MBG
ERP terintegrasi untuk Koperasi Makan Bergizi Gratis (MBG): purchasing, produksi dapur, distribusi BAST ber-QR, keuangan/jurnal, dan RBAC multi-peran. NestJS + React.
smart_sppg ini ERP terintegrasi buat Koperasi Makan Bergizi Gratis (MBG). Intinya dia nyatuin alur dari pengadaan bahan, produksi di dapur, distribusi ke sekolah mitra, sampai pembukuan keuangan — semuanya jadi satu sistem, nggak kepisah-pisah lagi.
🔗 Coba demonya langsung: mbg.razinsaid.com — login
superadmin@smart-sppg.id/Password123!. Mau coba peran lain? Ganti emailnya jadidapur@,purchasing@,controlling@,majujaya@(vendor), atausdzaha@genggong.sch.id(mitra sekolah) — semua passwordPassword123!. Ini pakai data contoh, aman dicoba.
Ceritanya kenapa dibikin
Program MBG itu ngelibatin banyak pihak sekaligus: dapur produksi, vendor bahan, tim purchasing & controlling, sampai sekolah penerima. Tanpa satu sistem yang nyatuin semuanya, koordinasi jadi ribet, distribusi susah dilacak, dan pertanggungjawaban keuangan gampang meleset. Nah, sistem ini yang nyoba beresin itu semua.
📖 Penasaran cerita di balik bikinnya, dari nol sampai jalan? Aku tulis lengkap per bab di seri Membangun smart_sppg.
Fitur utama
- Multi-peran (RBAC) — superadmin, admin pusat, dapur, controlling, purchasing, vendor, dan mitra sekolah, masing-masing hak aksesnya beda.
- Purchasing & vendor — katalog vendor, PO/RAB, dan penerimaan bahan.
- Produksi dapur — perencanaan sama pencatatan produksi porsi.
- Distribusi + BAST — berita acara serah terima berupa PDF ber-QR yang bisa diverifikasi publik, biar dokumennya nggak bisa dipalsuin.
- Keuangan & jurnal — pencatatan akuntansi yang nyambung langsung dari transaksi.
- Notifikasi realtime — update status masuk lewat SSE, jadi nggak perlu refresh-refresh.
- Inventori — stok bahan dengan satuan fleksibel dan stok gudang.
Arsitektur & teknologi
- Backend: NestJS (REST API
/v1), Prisma ORM, MySQL, autentikasi JWT (access + refresh), plus rate-limit & account lockout. - Frontend: React + Vite (SPA), same-origin sama API.
- Keamanan: URL QR verify di-HMAC-sign biar ID dokumen nggak bisa ditebak-tebak; RBAC ketat per peran.
- Deploy: PM2 (backend) + nginx (SPA + reverse proxy), terisolasi di subdomain sendiri dengan database least-privilege.
Tampilan aplikasi


Catatan demo
Yang dipajang di sini jalan pakai data contoh (seed: 12 user, puluhan produk, vendor, sama rute). Semua fitur aktif, termasuk cache dan notifikasi realtime. Silakan dijelajahi, jangan sungkan.