Skip to content

GirindraSW/MoneyLog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MoneyLog logo

MoneyLog

Aplikasi pencatatan pengeluaran harian yang ringan, cepat, dan tetap berfungsi tanpa internet.

Flutter Dart Hive Provider License: MIT Platform


📖 Tentang Proyek

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 Utama

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.

📱 Tampilan Aplikasi

Beranda Tambah Pengeluaran Riwayat

🏗️ Arsitektur

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:

  1. Pengguna mengetuk tombol + Tambah dan mengisi form.
  2. Widget UI memanggil method pada TransactionProvider.
  3. Provider menjalankan logika dan memanggil notifyListeners().
  4. Data disimpan permanen di Hive Box pada perangkat.
  5. UI otomatis rebuild dengan data terbaru.

🛠️ Tech Stack

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.

🚀 Cara Menjalankan

Prasyarat

  • Flutter SDK >= 3.0.0
  • Dart SDK >= 3.0.0
  • Android Studio / VS Code dengan plugin Flutter
  • Emulator atau perangkat fisik (Android / iOS)

Instalasi

# 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

Build Release

# Android APK
flutter build apk --release

# Android App Bundle (untuk Play Store)
flutter build appbundle --release

# iOS
flutter build ios --release

📁 Struktur Folder

moneylog/
├── 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

🗺️ Roadmap

  • 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

Kontribusi sangat dihargai! Untuk berkontribusi:

  1. Fork repositori ini
  2. Buat branch fitur baru (git checkout -b feature/fitur-keren)
  3. Commit perubahan (git commit -m 'feat: tambah fitur keren')
  4. Push ke branch (git push origin feature/fitur-keren)
  5. Buka Pull Request

Mohon ikuti Conventional Commits untuk pesan commit.


📄 Lisensi

Distribusikan di bawah MIT License. Lihat LICENSE untuk informasi lebih lanjut.


👤 Kontak

Girindra Sulistiyo Wardoyo@GirindraSWGirindrasulistiyowardoyo@gmail.com

Link proyek: https://github.com/GirindraSW/moneylog


⭐ Jika proyek ini bermanfaat, jangan lupa beri bintang!

Dibuat dengan ❤️ menggunakan Flutter

About

Flutter mobile application for tracking personal expenses and transaction history.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages