Spend Mate is a mobile personal finance tracker developed as a Software Engineering coursework project. Its goal is to provide users with an efficient, modern, and reliable platform for managing daily income and expenses.
Take a look at the core functionalities and interface of Spend Mate:
| Welcome/Login | Dashboard Overview | Transactions List |
|---|---|---|
![]() |
![]() |
![]() |
| User Authentication | Balance & Summary | Listing & Filtering |
| Financial Graphs | Add Transaction | Transaction Details |
|---|---|---|
![]() |
![]() |
![]() |
| Data Visualization | Data Entry Form | Specific Information |
| Edit Transaction | Settings | Manage Categories |
|---|---|---|
![]() |
![]() |
![]() |
| Data Entry Form | App Configuration | Category Management |
- Real-time Tracking: Instantly record and monitor income and expenses.
- Layered Architecture: Built using clean, modern architecture principles for maintainability.
- Cloud Integration: Real-time data synchronization across devices (using Firebase/Firestore).
- Offline Caching: Seamless operation even without an internet connection.
- Graphical Summary: Visual representation (Bar Charts, Pie Charts) of monthly and category-wise spending.
- Framework: Flutter
- Language: Dart
- State Management: Provider
- Database/Backend: Firebase Authentication & Firestore
- Charting:
fl_chartpackage
Professor Ibrahim Musa Ishag Musa, PhD.
Full Stack AI/ML R&D Scientist
IEEE Senior Member
Assistant Professor, Dongshin University
Spend Mate Project Team
Dongshin University
Department of Software Convergence
- Shofiqul Islam (Requirements & Analysis)
- Syed Bayazid Hossain (Design & Development)
- Zahid Hasan (Testing & Review)
- Md Refat Islam Abir (Documentation)
Follow these steps to set up and run the Spend Mate application on your machine.
- Flutter SDK (Stable Channel)
- Dart SDK (Bundled with Flutter)
- Android Studio or VS Code with Flutter and Dart plugins.
- Firebase Project: A configured Firebase project is required for authentication and Firestore database access.
-
Clone the Repository:
Use Git to clone the project to your local machine:
git clone https://github.com/bayazidht/spend_mate.git cd spend_mate -
Install Dependencies:
Fetch all required Dart packages and dependencies:
flutter pub get
-
Configure Firebase:
The app uses Firebase for authentication and database. You must configure your own Firebase project:
- Android: Place your
google-services.jsonfile inside theandroid/app/directory. - iOS: Follow the standard Firebase documentation to add your
GoogleService-Info.plistfile.
- Android: Place your
-
Run the Application:
Ensure you have an active emulator or a physical device connected, then run the app:
flutter run








