Setelah beberapa minggu ngoprek di sela-sela kesibukan harian, akhirnya Dompetin resmi live dan bisa diakses publik di dompetin.site.
Buat yang belum tau, Dompetin ini aplikasi web buat nyatat keuangan pribadi — pemasukan, pengeluaran, target tabungan, sampai laporan keuangan — semuanya dalam satu tempat. Awalnya proyek ini gue kasih nama FinTrack, tapi di tengah jalan gue rebrand jadi Dompetin biar lebih related sama pasar lokal.
Kenapa Bikin Ini?
Simpel aja sih, gue capek pindah-pindah aplikasi pencatatan keuangan yang fiturnya kebanyakan atau malah kurang sesuai sama kebutuhan gue. Daripada terus nyari yang "pas", akhirnya gue putusin bikin sendiri — sekalian jadi playground buat belajar hal-hal baru di stack yang gue pake sehari-hari.
Stack yang Dipakai
Dompetin dibangun full berbasis Node.js, dengan breakdown teknologi kira-kira begini:
- Next.js — framework utama, sekaligus handle server-side rendering dan API routes
- TypeScript — biar codebase-nya lebih aman dari typo-typo random pas refactor
- Supabase — buat auth, database (Postgres), sampai row-level security
- Tailwind CSS — styling cepat tanpa perlu bolak-balik nulis CSS manual
- Upstash Redis — buat rate limiting, biar endpoint-endpoint sensitif nggak gampang di-abuse
- Cloudflare Turnstile — captcha alternatif yang lebih ringan dari reCAPTCHA
- Deploy di Vercel dengan custom domain
Fitur yang Udah Jalan
Beberapa hal yang udah bisa dipakai sekarang:
- Multi-akun/dompet, jadi bisa misahin misalnya rekening bank, e-wallet, atau cash
- Pencatatan transaksi pemasukan & pengeluaran dengan kategori
- Target tabungan (goals) lengkap dengan progress tracking
- Laporan keuangan
- Flow lupa password & reset password yang aman
- Dashboard yang responsif dan (mudah-mudahan) enak dipake
Sisi Security-nya
Karena background gue juga sering main-main di security engineering dan CTF, gue coba serius soal ini walaupun skalanya masih personal project:
- Content Security Policy (CSP) dengan nonce per-request
- Row Level Security (RLS) policy di level database
- RPC functions yang IDOR-safe
- Rate limiter di endpoint-endpoint kritikal
- Middleware buat proteksi route
Yang Masih Jadi PR
Namanya juga side project, pasti ada aja bug yang nongol. Salah satu yang lagi gue benerin sekarang soal alur registrasi yang kadang gagal nyimpen profile user gara-gara konfigurasi konfirmasi email di Supabase. Nanti kalau udah kelar, mungkin gue bikin tulisan terpisah soal debugging-nya — biar bisa jadi referensi juga buat yang ngalamin masalah serupa.
Coba Sendiri
Kalau penasaran, langsung gas cobain di dompetin.site. Feedback dan kritik selalu diterima dengan tangan terbuka — namanya juga masih terus dikembangin.
Ditulis oleh Muhamad Raehan Ramadhan. Kalau ada saran atau nemu bug, boleh banget reach out.