PocketUs adalah aplikasi manajemen keuangan pribadi (personal finance manager) yang dirancang untuk membantu pengguna mengelola, merencanakan, dan melacak keuangan harian secara luring (offline) dengan antarmuka yang premium, responsif, dan kaya akan animasi mikro.
Mencatat pengeluaran, pemasukan, dan transfer saldo antar dompet. Dilengkapi dengan pencarian transaksional, klasifikasi kategori, filter rentang tanggal, filter nominal, serta filter berdasarkan kantong/dompet.
Mendukung pembuatan beberapa kantong sekaligus (misalnya Tunai, Rekening Bank, E-Wallet) dengan saldo terpisah, ikon visual kustom, dan pilihan warna aksen yang representatif.
Menetapkan limit anggaran pengeluaran untuk jangka waktu bulanan. Pengguna mendapat indikasi visual yang jelas jika pengeluaran telah mendekati atau melebihi limit (Over Limit).
Membantu pengguna menabung untuk target khusus (misalnya membeli laptop, liburan, atau dana darurat) dengan fitur setor (deposit) dan tarik (withdraw) saldo celengan, serta visualisasi progress persentase pencapaian.
Menyajikan grafik arus kas mingguan dan grafik lingkaran (donut chart) untuk proporsi pengeluaran per kategori menggunakan library fl_chart secara interaktif dengan haptic feedback yang halus.
Melindungi privasi data keuangan pengguna dengan integrasi sistem keamanan biometrik (sidik jari atau pemindai wajah) saat pertama kali aplikasi dibuka dari latar belakang.
Mendukung ekspor riwayat keuangan ke format file CSV yang dapat langsung dibagikan atau dibuka menggunakan aplikasi spreadsheet seperti Microsoft Excel atau Google Sheets.
Aplikasi ini menggunakan pendekatan arsitektur bersih yang scalable dengan pemisahan tanggung jawab (separation of concerns) yang jelas:
- core/: Berisi konstanta global, konfigurasi warna tema, helper ikon, formatter angka/tanggal, dan utilitas global lainnya.
- models/: Model data ter-typing yang didefinisikan secara deklaratif untuk serialization dan database adapter.
- providers/: Layer logika bisnis dan state management berbasis Provider yang menjembatani view dengan local database.
- views/: Komponen UI visual yang modular. Setiap subfolder fitur berisi view utama dan subfolder
widgetsuntuk elemen-elemen UI spesifik yang dipecah agar mudah dirawat. - widgets/: Kumpulan widget global yang reusable di berbagai halaman (seperti animasi transisi, tombol kustom, dan item tile).
- Bahasa: Dart 3 (Flutter SDK)
- State Management: Provider
- Database Lokal: Hive & Hive Flutter (NoSQL database berkinerja tinggi untuk penyimpanan luring)
- Grafik Visual: FL Chart
- Autentikasi: Local Auth (Integrasi biometrik bawaan perangkat Android/iOS)
- Font: Google Fonts (Inter)
Ikuti langkah-langkah di bawah ini untuk menjalankan aplikasi di lingkungan pengembangan lokal Anda:
- Flutter SDK (Versi terbaru atau minimal 3.12.0)
- Android Studio / VS Code dengan Flutter extension terinstal
- Perangkat emulator atau fisik (Android/iOS)
-
Clone repositori ini ke komputer lokal Anda:
git clone https://github.com/username/pocketus_app.git
-
Masuk ke direktori proyek:
cd pocketus_app -
Unduh semua dependensi pub package yang diperlukan:
flutter pub get
-
Jalankan kode generator build_runner (diperlukan untuk membuat adapter database Hive):
flutter pub run build_runner build --delete-conflicting-outputs
-
Jalankan aplikasi di emulator atau perangkat fisik Anda:
flutter run
- Penyimpanan Lokal: Seluruh data transaksi, kategori, dompet, dan celengan disimpan secara aman di perangkat lokal menggunakan enkripsi box Hive. Data tidak dikirim ke server luar untuk menjaga privasi mutlak.
- Analisis Kode: Jalankan perintah di bawah ini secara berkala untuk memastikan kualitas penulisan kode tetap bersih dan terbebas dari warning linter:
flutter analyze