Fluidana (juga dikenal sebagai SeretDana) adalah aplikasi pencatatan keuangan pribadi modern berbasis web yang dirancang khusus untuk mahasiswa dan generasi muda. Aplikasi ini membantu pengguna dalam melacak pengeluaran, membuat anggaran bulanan, mengatur tujuan keuangan (tabungan), dan memantau tagihan yang harus dibayar.
- Dashboard Interaktif: Ringkasan lengkap mengenai sisa saldo, persentase pengeluaran, dan batas pengeluaran harian.
- Auto-Categorization: Pengeluaran secara otomatis dikategorikan berdasarkan deskripsi (misalnya: "Makan di warteg" otomatis masuk ke "Makanan & Minuman").
- Manajemen Anggaran: Pantau batas anggaran untuk setiap kategori.
- Tujuan Keuangan (Savings Goals): Buat target tabungan dan pantau progresnya.
- Tagihan: Pengingat tagihan bulanan atau rutin (Kos, Listrik, Internet).
- Frontend: Vue.js 3 (Composition API), Vite, Vue Router
- Styling: Tailwind CSS, Headless UI (Heroicons)
- Animasi: AOS (Animate on Scroll), VueUse Motion
- Backend/BaaS: Supabase (PostgreSQL, Authentication, Row-Level Security)
Setelah dilakukan refactoring, struktur direktori proyek menjadi lebih modular:
src/
├── assets/ # Logo, gambar, dan aset statis
├── components/ # Komponen UI modular
│ ├── dashboard/ # Komponen khusus halaman dashboard (Cards, Lists)
│ ├── landing/ # Komponen khusus halaman landing page
│ ├── layout/ # Komponen layout (Sidebar, MobileNav)
│ └── modal/ # Komponen modal serbaguna
├── composables/ # (Opsional) Vue composables untuk logika state
├── lib/ # Konfigurasi eksternal (Supabase client)
├── router/ # Konfigurasi Vue Router (index.js)
├── utils/ # Fungsi utilitas murni
│ ├── categoryHelper.js # Logika klasifikasi kategori otomatis
│ └── formatters.js # Helper format mata uang dan tanggal
├── views/ # Halaman utama aplikasi (Dashboard, Auth, Landing)
├── App.vue # Root component
├── main.js # Entry point aplikasi
└── style.css # Global styles
- Node.js (v16 atau lebih baru direkomendasikan)
- Akun Supabase (untuk backend)
Jalankan perintah berikut di terminal:
npm installBuat file .env.local di root proyek dan tambahkan kredensial Supabase Anda:
VITE_SUPABASE_URL=https://project-id.supabase.co
VITE_SUPABASE_ANON_KEY=ey...npm run devBuka browser dan akses URL lokal yang diberikan (biasanya http://localhost:5173).
npm run buildPanduan untuk developer:
- Komponen halaman (Pages) berada di folder
src/views/. - Komponen kecil (UI) berada di folder
src/components/. - Tambahkan rute baru di
src/router/index.js. - Jika membuat fungsi logika yang kompleks (tanpa UI), letakkan di folder
src/utils/atausrc/composables/.