MoneyLog adalah aplikasi mobile berbasis Flutter yang membantu pengguna mencatat pengeluaran harian mereka dengan cara yang paling sederhana — tiga ketukan, satu transaksi tersimpan.
Berbeda dengan aplikasi keuangan lain yang rumit, MoneyLog dirancang dengan tiga prinsip:
- ⚡ Cepat & Ringan — input pengeluaran dalam hitungan detik.
- 📴 Offline-first — tidak butuh internet, tidak butuh login.
- 🔒 Privat secara default — semua data tersimpan lokal di perangkat.
| Fitur | Deskripsi |
|---|---|
| 💰 Ringkasan Bulanan | Total pengeluaran bulan berjalan langsung terlihat saat aplikasi dibuka. |
| 🏷️ 5 Kategori Cepat | Makan, Transport, Belanja, Tagihan, Lain-lain. |
| 📅 Riwayat per Bulan | Geser bulan untuk melihat total dan rincian transaksi setiap harinya. |
| 📝 Catatan Opsional | Tambahkan catatan singkat di setiap pengeluaran. |
| 🌐 100% Offline | Database lokal Hive — tanpa server, tanpa langganan, tanpa iklan. |
MoneyLog menggunakan arsitektur sederhana berbasis Provider pattern untuk memisahkan UI, logika, dan penyimpanan data.
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Pengguna │ ─► │ Flutter UI │ ─► │ Provider │ ─► │ Hive Box │
│ (Action) │ │ (View) │ │ (State) │ │ (Storage) │
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘
▲ │ │
└─── notifyListeners() ◄────── data tersimpan
Alur data:
- Pengguna mengetuk tombol + Tambah dan mengisi form.
- Widget UI memanggil method pada
TransactionProvider. - Provider menjalankan logika dan memanggil
notifyListeners(). - Data disimpan permanen di Hive Box pada perangkat.
- UI otomatis rebuild dengan data terbaru.
| Layer | Teknologi | Alasan |
|---|---|---|
| UI Framework | Flutter | Satu codebase untuk Android & iOS, performa native. |
| Bahasa | Dart | Bahasa modern, type-safe, didukung penuh oleh Flutter. |
| Database | Hive | Key-value store ringan, super cepat, jalan di perangkat. |
| State Management | Provider | Idiomatis Flutter, mudah di-test, reactive. |
- Flutter SDK
>= 3.0.0 - Dart SDK
>= 3.0.0 - Android Studio / VS Code dengan plugin Flutter
- Emulator atau perangkat fisik (Android / iOS)
# 1. Clone repositori ini
git clone https://github.com/GirindraSW/moneylog.git
cd moneylog
# 2. Install dependencies
flutter pub get
# 3. Generate Hive type adapters (jika diperlukan)
flutter pub run build_runner build --delete-conflicting-outputs
# 4. Jalankan aplikasi
flutter run# Android APK
flutter build apk --release
# Android App Bundle (untuk Play Store)
flutter build appbundle --release
# iOS
flutter build ios --releasemoneylog/
├── lib/
│ ├── main.dart # Entry point aplikasi
│ ├── models/
│ │ └── transaction.dart # Model data transaksi (Hive)
│ ├── providers/
│ │ └── transaction_provider.dart # State management
│ ├── screens/
│ │ ├── home_screen.dart # Beranda
│ │ ├── add_screen.dart # Form tambah pengeluaran
│ │ └── history_screen.dart # Riwayat per bulan
│ ├── widgets/ # Reusable components
│ └── utils/ # Helpers & constants
├── assets/
│ └── images/
├── pubspec.yaml
└── README.md
- Q2 2026 — MVP rilis (pencatatan, kategori, ringkasan, riwayat)
- Q3 2026 — Grafik tren mingguan, limit anggaran, notifikasi, ekspor CSV
- Q4 2026 — Backup cloud terenkripsi, sinkronisasi multi-perangkat, mode keluarga
- 2027 — Pencatatan pemasukan, auto-kategorisasi AI, MoneyLog Pro
Kontribusi sangat dihargai! Untuk berkontribusi:
- Fork repositori ini
- Buat branch fitur baru (
git checkout -b feature/fitur-keren) - Commit perubahan (
git commit -m 'feat: tambah fitur keren') - Push ke branch (
git push origin feature/fitur-keren) - Buka Pull Request
Mohon ikuti Conventional Commits untuk pesan commit.
Distribusikan di bawah MIT License. Lihat LICENSE untuk informasi lebih lanjut.
Girindra Sulistiyo Wardoyo — @GirindraSW — Girindrasulistiyowardoyo@gmail.com
Link proyek: https://github.com/GirindraSW/moneylog
⭐ Jika proyek ini bermanfaat, jangan lupa beri bintang!
Dibuat dengan ❤️ menggunakan Flutter



