Your Personal Finance Companion
Track expenses, manage dues, and get AI-powered financial insights — all in one beautiful app.
Features • Screenshots • Installation • Contributing • License
- Real-time spending statistics (Total, Count, Average)
- Interactive 7-day spending bar chart
- Category breakdown pie chart
- Recent transactions list
- Automatically detects Google Pay Closure to show overlay to add transactions
- Native overlay for quick expense logging
- Background service with minimal battery usage
- Track money you owe (To Pay) and money owed to you (To Receive)
- Mark dues as settled with one tap
- View complete settlement history
- Powered by Google Gemini API
- Ask questions about your spending habits
- Get personalized financial advice
- Beautiful dark theme with green accent
- Smooth animations and transitions
- Clean, minimalist design
| Dashboard | Dues | AI Chat |
|---|---|---|
![]() |
![]() |
![]() |
- Flutter SDK (3.10+)
- Android Studio or VS Code
- Android device or emulator (API 26+)
# Clone the repository
git clone https://github.com/yourusername/paymate.git
cd paymate
# Install dependencies
flutter pub get
# Run the app
flutter runflutter build apk --releaseThe APK will be at: build/app/outputs/flutter-apk/app-release.apk
lib/
├── main.dart # App entry point
├── theme/
│ └── app_theme.dart # Dark theme configuration
├── models/
│ ├── transaction.dart # Transaction model
│ ├── due.dart # Dues model
│ └── category.dart # Expense categories
├── services/
│ ├── storage_service.dart # Hive local storage
│ ├── ai_service.dart # Gemini API integration
│ └── gpay_detection_service.dart
├── providers/
│ ├── transaction_provider.dart
│ └── dues_provider.dart
├── screens/
│ ├── dashboard_screen.dart
│ ├── transactions_screen.dart
│ ├── dues_screen.dart
│ ├── chat_screen.dart
│ └── settings_screen.dart
└── widgets/
├── stat_card.dart
├── spending_chart.dart
├── category_chart.dart
└── transaction_list.dart
android/
├── app/src/main/
│ ├── kotlin/.../
│ │ ├── MainActivity.kt
│ │ └── GPayAccessibilityService.kt
│ └── res/
│ └── layout/
│ └── overlay_transaction.xml
| Package | Purpose |
|---|---|
provider |
State management |
hive_flutter |
Local data persistence |
fl_chart |
Beautiful charts |
google_fonts |
Inter font family |
http |
API requests |
url_launcher |
External links |
intl |
Date formatting |
uuid |
Unique IDs |
We welcome contributions! Here's how you can help:
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/paymate.git - Create a branch:
git checkout -b feature/amazing-feature - Make your changes
- Test thoroughly
- Commit:
git commit -m 'Add amazing feature' - Push:
git push origin feature/amazing-feature - Open a Pull Request
- Follow Dart style guide
- Write meaningful commit messages
- Add comments for complex logic
- Test on both emulator and physical device
- Update documentation if needed
- 🐛 Bug fixes
- ✨ New features
- 📱 iOS support
- 🌍 Internationalization (i18n)
- 📚 Documentation
- 🧪 Tests
- 🎨 UI/UX improvements
- Get an API key from Google AI Studio
- In the app, go to AI Chat → Settings icon
- Enter your API key
- Go to Settings → Accessibility
- Find PayMate and enable it
- Grant Usage Access permission
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License
Copyright (c) 2024 Shahid Anowar
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
Shahid Anowar
🌐 Website •
💼 LinkedIn
Made with ❤️ and Flutter


