Aplikasi pendukung keputusan bisnis untuk UMKM: catat penjualan harian, lihat untung-rugi sebenarnya (bukan cuma omzet), dan uji skenario harga sebelum diterapkan disertai fitur copilot.
Semua angka (omzet, modal, untung, margin) dihitung langsung dari data transaksimu dengan rumus pasti dan konsisten — AI hanya membantu menjelaskan maksudnya, tidak ikut mengarang angka.
- Dashboard owner — KPI revenue, transaksi, profit, margin + tren harian 30 hari terakhir dan delta vs 30 hari sebelumnya, top 5 produk, transaksi terbaru, dan insight otomatis (misal produk laris tapi margin tipis).
- Produk — CRUD, aktif/nonaktif, badge margin, ambang menipis per produk, restock/koreksi tercatat, tab riwayat stok (Owner), halaman detail per produk (terjual, revenue, profit, margin) + deep-link ke simulator.
- Transaksi (kasir) — keranjang multi-produk, 1 struk tersimpan sebagai 1 transaksi + N item dengan snapshot harga. Riwayat dikelompokkan Hari > Struk > Item + subtotal. Struk yang salah catat dibatalkan utuh oleh owner lalu dibuatkan struk koreksi (tanpa edit diam-diam, biar teraudit).
- Diskon — harga coret otomatis: per produk (berlaku sendiri) atau global (dipilih di kasir), dengan persen, kuota unit, dan jendela waktu; status mengikuti jadwal/kuota (Aktif/Terjadwal/Selesai); peringatan bila harga jatuh di bawah modal; draf dari Simulator bisa langsung disimpan.
- Statistik — laporan per periode: tren revenue/profit (unit adaptif rb/jt), performa per produk (toggle Revenue/Profit/Margin), struk per hari, jam tersibuk & pola hari (WITA), penjualan per kasir, panel inventori (nilai stok, estimasi hari stok, stok mati), pergerakan stok mingguan, dan matriks Volume vs Margin.
- Simulator "what-if" — lab satu produk: geser harga jual, diskon, modal, volume, langsung lihat dampak revenue/profit/margin, titik impas, dan diskon maksimum. Baseline bisa hari ini, minggu ini, bulan ini, atau custom.
- Copilot — tanya jawab Owner berbasis data transaksi: ringkasan, ranking produk, perbandingan periode, penyebab perubahan profit, stok, dan simulasi harga. Angka ditahan bila tidak berasal dari hasil tool.
- Zakat perdagangan — estimasi 2,5% dari aset bersih (stok + kas + piutang − utang) bila mencapai nisab emas dan genap 1 haul (±354 hari). Kas, piutang, utang, dan harga emas diisi manual; Simulator menampilkan dampak skenario ke zakat.
- Pengaturan — identitas bisnis + kelola staff (tambah/hapus, role OWNER/STAFF). Riwayat struk staff yang sudah dihapus tetap menampilkan namanya.
- Log Aktivitas — catatan aksi Owner & staff (login/logout, transaksi & void, produk, diskon, kelola staff) lengkap dengan perangkat, filter orang/jenis/tanggal, dan muat riwayat lebih lama.
Copilot sekarang berjalan dari halaman /copilot; preview akan diperbarui setelah gladi bersih dengan data demo saat ini.
Catatan: screenshot di atas diambil dari data demo sebelumnya (Resto Etam). Data demo saat ini: Cindera Etam (toko oleh-oleh khas Kaltim).
Zona waktu diatur per bisnis di halaman Pengaturan (Owner), default WITA (Asia/Makassar). Pilihan: WIB (Asia/Jakarta), WITA (Asia/Makassar), WIT (Asia/Jayapura). Semua angka harian/jam mengikuti zona bisnis, bukan zona perangkat.
Syarat: Node.js 22.x atau 24.x dan npm 11 ke atas (lihat engines di package.json).
cp .env.example .env, isiDATABASE_URL(Neon, pooled endpoint) danBETTER_AUTH_SECRETnpm installnpx drizzle-kit migratenpm run db:seed:demo(data demo: Cindera Etam, 10 produk khas Kaltim, 90 hari transaksi)npm run dev
Skrip yang menulis data (verify:e2e-discount, db:seed:demo) hanya boleh jalan ke DB scratch: set DATABASE_URL, SCRATCH_DB_HOST (hostname-nya saja), dan ALLOW_DESTRUCTIVE_DB=1 di env sesi, lalu skrip berhenti sendiri bila target bukan scratch. Pakai connection string direct (tanpa -pooler) untuk skrip dan migrasi.
- SvelteKit
- Tailwind CSS
- Drizzle ORM
- Postgres (Neon)
- better-auth
- Chart.js
- Cloudflare Pages (Deployment)
Built with ☕ by Flaid — Full-stack Developer & Indie Builder





