Master Your Money Flow. Lacak pengeluaran, atur anggaran ketat, dan capai target tabungan. Semua dalam satu dasbor yang bersih dan bebas gangguan.
CashMap adalah aplikasi pelacak keuangan modern yang dibangun sebagai Progressive Web App (PWA). Aplikasi ini membantu pengguna mendapatkan kendali penuh atas keuangan mereka melalui kategorisasi cerdas, perhitungan anggaran real-time, dan pelacakan tujuan tabungan.
Berbeda dengan pelacak biasa, CashMap berfokus pada analitik "Daily Safe-to-Spend" — menghitung secara otomatis berapa banyak yang aman untuk dibelanjakan hari ini tanpa melanggar batas anggaran bulanan Anda, yang menyesuaikan diri secara dinamis setiap hari.
- 📱 Progressive Web App (PWA): Dapat diinstal di perangkat seluler (iOS/Android) untuk pengalaman seperti aplikasi native.
- 📊 Dasbor Pintar: Tinjauan real-time Total Saldo, Pemasukan vs Pengeluaran, dan aktivitas transaksi terbaru.
- 📉 Dynamic Budgeting: Tetapkan rentang tanggal dan total anggaran. Aplikasi menghitung Batas Harian (Daily Limit) secara otomatis berdasarkan sisa hari dan dana.
- 🎯 Savings Goals: Visualisasikan kemajuan Anda menuju target tertentu (misal: HP Baru, Liburan) dengan indikator persentase.
- 📝 Manajemen Transaksi: Catat pemasukan/pengeluaran dengan mudah, kategorisasi, dan filter berdasarkan tanggal.
- 🔐 Keamanan: Sistem autentikasi kustom dengan password hashing (bcrypt) dan pertanyaan keamanan untuk pemulihan akun.
- 💾 Kedaulatan Data: Fitur Backup & Restore mandiri. Ekspor data keuangan ke format JSON dan impor kembali kapan saja untuk memindahkan data antar perangkat.
- 🎨 UI Modern: Dibangun dengan Shadcn UI dan Framer Motion untuk antarmuka yang halus, responsif, dan estetis.
Proyek ini dibangun menggunakan teknologi web modern terkini:
| Kategori | Teknologi |
|---|---|
| Framework | Next.js 16 (App Router) |
| Bahasa | TypeScript |
| Styling | Tailwind CSS & Shadcn UI |
| Database | PostgreSQL |
| ORM | Prisma |
| Ikon | Lucide React |
| Animasi | Framer Motion |
| Media | Next Cloudinary (Upload Avatar) |
| Enkripsi | Bcrypt.js |
Ikuti langkah-langkah ini untuk menjalankan proyek secara lokal di mesin Anda.
- Node.js (v18 atau lebih baru)
- PostgreSQL Database (Lokal atau Cloud seperti Neon/Supabase)
- Akun Cloudinary (untuk fitur upload foto profil)
-
Clone repositori
git clone [https://github.com/rizasaputra29/cashmap.git](https://github.com/rizasaputra29/cashmap.git) cd cashmap -
Instal dependensi
npm install # atau yarn install -
Konfigurasi Environment Variables Buat file
.envdi root direktori dan tambahkan konfigurasi berikut:# Koneksi Database (PostgreSQL) DATABASE_URL="postgresql://user:password@localhost:5432/cashmap?schema=public" # Cloudinary (Untuk Upload Avatar) NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME="nama_cloud_anda" NEXT_PUBLIC_CLOUDINARY_UPLOAD_PRESET="preset_upload_anda"
-
Setup Database (Prisma) Jalankan migrasi untuk membuat tabel di database Anda:
npx prisma generate npx prisma db push
-
Jalankan server pengembangan
npm run dev
-
Buka aplikasi Buka browser dan kunjungi
http://localhost:3000.
Kontribusi adalah hal yang membuat komunitas open source menjadi tempat yang luar biasa untuk belajar, inspirasi, dan berkreasi. Segala bentuk kontribusi sangat dihargai.
- Fork Proyek ini
- Buat Feature Branch Anda (
git checkout -b feature/FiturKeren) - Commit Perubahan Anda (
git commit -m 'Menambahkan fitur keren') - Push ke Branch (
git push origin feature/FiturKeren) - Buka Pull Request
Dibuat dengan ❤️ oleh Riza Saputra

