Detects Spendings, Ensures Quality, Accelerates Money Management
Built with the tools and technologies:
- Overview
- Features
- Tech Stack
- Getting Started
- Model & Data Layer
- Analytics
- Export Options
- License
- Author
- Screenshots
BudgetBudy is a personal finance and ledger management app built with Flutter. It combines:
- a daily spending tracker for your own expenses, and
- a Khatabook-style party ledger for tracking who you will give / who you will get money from.
It's designed to streamline personal finance management, reduce manual calculation errors, and provide real-time insights using local SQLite storage β all offline, no internet required.
-
π Daily/Weekly/Monthly/Yearly Views
Track your spending across multiple time ranges with tabbed navigation.
-
π° Category-Based Transactions
Add expenses with title, amount, date, and category for better organization.
-
π₯ Khatabook-Style Party Ledger
Create parties (contacts) and track "gave" or "got" transactions per party.
-
π Automatic Balance Calculation
See You will give and You will get totals automatically calculated.
-
π¨ Modern UI Design
Clean Material Design with custom fonts (
OpenSans,Quicksand) and color-coded balances. -
π Visual Analytics
Charts and graphs using
fl_chartfor spending patterns and trends. -
πΎ Offline Storage
All data stored locally using SQLite β no backend or internet connection needed.
-
π Real-Time Updates
Provider state management ensures UI updates instantly when data changes.
- Framework/UI: Flutter, Material Design
- Language: Dart
- State Management: Provider
- Local Database: SQLite (sqflite)
- Separate databases for spendings (
spendings.db) and party ledger (khatabook.db)
- Separate databases for spendings (
- Utilities & Libraries:
intlβ Date formatting and localizationfl_chartβ Beautiful charts and graphsrandom_colorβ Color utilities for UIurl_launcherβ Open external links
For Android users who just want to use the app:
- Download the latest APK from the Releases page
- Enable "Install from Unknown Sources" in your Android settings:
- Go to Settings β Security β Unknown Sources (Enable)
- Or Settings β Apps β Special Access β Install Unknown Apps β Select your browser β Allow
- Install the APK by opening the downloaded file
- Open BudgetBudy and start tracking your finances! π
Requirements:
- Android 5.0 (Lollipop) or higher
- ~20 MB storage space
For developers who want to modify or contribute:
git clone https://github.com/devaldaki3/BudgetBudy.git
cd BudgetBudyMake sure Flutter is installed and configured:
flutter doctorThen install project dependencies:
flutter pub getflutter runSelect your device/emulator when prompted.
The app will start with the Home screen (spending tabs). You can navigate to the Khatabook ledger from the drawer or dedicated navigation option.
To build your own release APK:
flutter build apk --releaseThe APK will be generated at: build/app/outputs/flutter-apk/app-release.apk
- Transaction Model:
id,title,amount,date,category
- Transactions Provider:
- Stores list of transactions in memory
- Persists data via
DBhelp/dbhelper.dartintospendings.db - Provides CRUD operations:
addTransactions,deleteTransaction,fetchTransactions - Filters: daily, weekly, monthly, yearly, recent (last 7 days)
- Aggregations for charts and totals
- Party Model:
id,name,phone
- TransactionModel:
id?,partyId,amount,type (gave/got),date,note
- Database Helper (
database/db_helper.dart):- Creates and manages
khatabook.db - Tables:
parties(id, name, phone)transactions(linked to parties via foreign key)
- Provides functions to:
- Insert/update/delete parties and transactions
- Compute per-party balance and totals
- Get transactions by party ID
- Creates and manages
- Time-Based Analytics: Daily, weekly, monthly, yearly spending breakdowns
- Chart Visualizations: Using
fl_chartfor pie charts and bar graphs - Balance Summary:
- Total spending across all transactions
- "You will give" vs "You will get" totals for party ledger
- Recent Activity: Last 7 days transaction view
Contributions are welcome! Please check out our Contributing Guidelines for details on how to get started.
- π Report bugs
- π‘ Suggest new features
- π§ Submit pull requests
- π Improve documentation
- β Star this repository
This project is licensed under the MIT License - see the LICENSE file for details.
Developed with β€οΈ by @devaldaki3
If you find this project helpful:
- β Star this repository to show your support
- π Report issues on the Issues page
- π¬ Share feedback and suggestions
- π Fork and contribute to make it better
Have questions or suggestions? Feel free to:
- Open an issue
- Start a discussion

