
# π° Bill Bucket
**A beautiful, intuitive Flutter app to manage your recurring bills and plan your finances with ease.**
[](https://flutter.dev)
[](https://dart.dev)
[](LICENSE)
[](pubspec.yaml)
[](https://github.com/Parth-Patel01/BillBucket)
[Features](#-features) β’ [Screenshots](#-screenshots) β’ [Installation](#-installation) β’ [Usage](#-usage) β’ [Tech Stack](#-tech-stack) β’ [Architecture](#-architecture) β’ [Contributing](#-contributing)
π About
Bill Bucket is a modern, offline-first mobile application designed to help you effortlessly manage your recurring bills. Whether youβre tracking weekly subscriptions, monthly utilities, or yearly insurance payments, Bill Bucket provides a clean, intuitive interface to keep your finances organized.
With smart calculations for monthly costs and recommended weekly transfers, youβll always know how much to set aside for your bills account. The app features beautiful custom theming, smooth animations, and a robust data persistence layer that works completely offline.
β¨ Features
π― Core Functionality
- π Bill Management: Add, edit, and delete recurring bills with ease
- π
Smart Due Dates: Track next due dates with automatic calculations based on frequency
- π° Financial Insights:
- Calculate total monthly cost across all bills
- Get recommended weekly transfer amounts
- View upcoming bills in the next 14 days
- β
Payment Tracking: Mark bills as paid and automatically calculate next due date
- π Undo Support: Easily undo payments or restore deleted bills
π¨ User Experience
- π Theme Support: Beautiful light and dark themes with system preference detection
- π Custom Branding: Elegant typography using Baloo2 and Nunito fonts
- π± Responsive Design: Optimized for all screen sizes
- β‘ Smooth Animations: Polished interactions with haptic feedback
- π Smart Filtering: Filter bills by frequency or view overdue items
- π Visual Indicators: Color-coded overdue bills and intuitive icons
πΎ Data Management
- π Offline-First: All data stored locally using Hive
- πͺ Persistent Storage: Your bills are saved securely on your device
- π Fast Performance: Instant load times with efficient data structures
- π State Management: Clean architecture with Provider pattern
πΈ Screenshots
π Installation
Prerequisites
- Flutter SDK: 3.9.2 or higher
- Dart SDK: 3.9.2 or higher
- Android Studio / VS Code with Flutter extensions
- Android SDK (for Android development)
- Xcode (for iOS development, macOS only)
Setup Instructions
- Clone the repository
git clone https://github.com/Parth-Patel01/BillBucket.git
cd BillBucket
- Install dependencies
- Generate Hive adapters (if needed)
flutter pub run build_runner build --delete-conflicting-outputs
- Run the app
Building for Production
Android:
flutter build apk --release
# or for App Bundle
flutter build appbundle --release
iOS:
flutter build ios --release
π» Usage
Adding a Bill
- Tap the + floating action button on the dashboard
- Enter the bill name (e.g., βNetflix Subscriptionβ)
- Enter the amount
- Select the frequency (Weekly, Fortnightly, Monthly, or Yearly)
- Choose the next due date
- Tap Add bill
Managing Bills
- View Details: Tap any bill to see full information
- Mark as Paid: Open a bill and tap βMark as paid todayβ to update the next due date
- Edit: Tap the edit button to modify bill details
- Delete: Swipe left on a bill or use the delete button in the detail screen
- Filter: Use the filter chips to view bills by frequency or overdue items
Dashboard Features
- Monthly Cost: See your total monthly bill expenses at a glance
- Weekly Transfer: Get a recommended weekly transfer amount to cover all bills
- Upcoming Bills: View bills due in the next 14 days
- Filter & Sort: Easily find bills by frequency or sort by due date
π Tech Stack
Core Technologies
- Flutter - Cross-platform UI framework
- Dart - Programming language
State Management
Data Persistence
- Hive - Fast, lightweight NoSQL database
- Hive Flutter - Flutter integration for Hive
Utilities
π Architecture
Bill Bucket follows a clean, maintainable architecture pattern:
lib/
βββ main.dart # App entry point
βββ models/ # Data models
β βββ bill.dart # Bill entity
β βββ app_settings.dart # App settings
βββ providers/ # State management
β βββ bill_provider.dart # Bill business logic
β βββ settings_provider.dart # Settings management
βββ screens/ # UI screens
β βββ dashboard_screen.dart
β βββ add_edit_bill_screen.dart
β βββ bill_detail_screen.dart
β βββ settings_screen.dart
βββ widgets/ # Reusable widgets
β βββ animated_press.dart
βββ utils/ # Utilities
β βββ bill_icons.dart # Icon mapping
β βββ formatters.dart # Formatting helpers
βββ theme/ # Theming
βββ app_theme.dart # Theme configuration
Key Design Patterns
- Provider Pattern: Centralized state management
- Repository Pattern: Data access abstraction (via Hive)
- Immutable Models: Bill objects are immutable for safety
- Separation of Concerns: Clear boundaries between UI, logic, and data
π¨ Customization
Themes
The app supports three theme modes:
- System: Follows device theme preference
- Light: Custom light theme with brand colors
- Dark: Elegant dark theme
Theme preferences are persisted locally and sync across app restarts.
Brand Colors
- Primary Navy:
#0B3C5D
- Accent Blue:
#2D8CFF
- Light Background:
#D7ECFF
Typography
- Headings: Baloo2 (Bold, SemiBold)
- Body Text: Nunito (Regular, SemiBold, Bold)
π€ Contributing
Contributions are welcome! Please feel free to submit a Pull Request. Hereβs how you can help:
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature)
- Commit your changes (
git commit -m 'Add some AmazingFeature')
- Push to the branch (
git push origin feature/AmazingFeature)
- Open a Pull Request
Guidelines
- Follow the existing code style
- Add comments for complex logic
- Update documentation as needed
- Test your changes thoroughly
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π€ Author
Parth Patel
π Acknowledgments
- Flutter team for the amazing framework
- Hive developers for the excellent persistence solution
- All contributors and users of this project
π Project Status

π Privacy Policy
https://parth-patel01.github.io/BillBucket/privacy-policy
**Made with β€οΈ using Flutter**
β Star this repo if you find it helpful!