FinGuard is a Flutter-based personal finance management mobile application designed to help users improve financial awareness, planning, and budgeting. The app integrates Firebase services and includes interactive modules such as expense tracking, financial goal management, shared account monitoring, and cognitive financial mini-games.
FinGuard was developed as an academic group project to demonstrate mobile development, clean architecture, cloud integration, and financial technology concepts.
The application aims to make personal finance more accessible and engaging for users through smart planning tools and gamified learning experiences.
- User registration and login
- Firebase Authentication integration
- User profile management
- Budget dashboard
- Weekly spending reports
- Subscription tracking
- Financial goal creation
- Notifications and reminders
- Expense breakdown analysis
- Financial health indicators
- Loan simulation tools
- Transaction history
- Shared financial monitoring
- Invitation code linking system
- Spending alerts
- Trusted user access
- Budget recommendations
Gamified learning modules to improve money management skills:
- Budget challenge
- Need vs Want challenge
- Currency exchange game
- Memory challenge
- Frontend: Flutter (Dart)
- State Management: BLoC / Provider
- Backend: Firebase
- Database: Cloud Firestore
- Authentication: Firebase Auth
- Storage: Firebase Storage
- Messaging: Firebase Cloud Messaging
- Charts: fl_chart
lib/
└── src/
└── features/
├── planning/
├── financial optimization/
├── shared_access/
├── cognitive_game/
Install the following tools before running the project:
- Flutter SDK
- Android Studio / Android Emulator
- Firebase CLI
- FlutterFire CLI
git clone <your-repository-url>
cd finguard
flutter pub getflutterfire configureEnsure the project is connected to the correct Firebase project.
flutter runFor Android Emulator:
flutter run -d emulator-5554- Firebase Authentication
- Cloud Firestore
- Firebase Storage
- Firebase Cloud Messaging
Develops as a university group assignment project.
This project is for educational and portfolio purposes.