Coinest
Pencatat keuangan pribadi yang sinkron di web dan Android.
- Peran
- Full stack — web, API, Android
- Konteks
- Produk pribadi
- Tahun
- 2026
- Stack
- Laravel 11 · Inertia + React · FastAPI · Flutter · PostgreSQL · Tailwind CSS
Coinest
Ringkasan
Kartu, transaksi, tabungan, anggaran, split bill, dan utang-piutang dalam satu sistem. Web Laravel dan aplikasi Android memakai database yang sama, jadi setiap perubahan langsung terlihat di semua perangkat.
Masalah
Catatan keuangan pribadi mudah tidak sinkron antara HP dan laptop, dan saldo bisa berubah tanpa jejak bila data diedit langsung di database. Sistem harus menjamin saldo tidak pernah minus dan setiap perubahan bisa diaudit.
Solusi
Tiga aplikasi berbagi satu PostgreSQL: web Laravel + Inertia React, API FastAPI, dan Android Flutter. Setiap transaksi dan saldo kartu ditandatangani HMAC-SHA256 dengan format kanonik yang identik di PHP dan Python, lalu diaudit terjadwal tiap malam. Uang keluar dicek dengan penguncian baris (SELECT … FOR UPDATE) sehingga saldo tidak pernah minus.
Fitur
Browser ──session──► coinest-app (Laravel 11 + Inertia React) ──┐
├──► PostgreSQL
Android ──JWT──────► coinest-api (FastAPI) ─────────────────────┘
HMAC-SHA256 per transaksi & saldo kartu — kunci sama di Laravel dan FastAPI
Audit integritas terjadwal: php artisan coinest:integrity (03:00)
Project berikutnya
Smartend