A modern personal finance management application built with Flutter and Firebase that helps users track income and expenses, analyze spending habits, manage financial records, and stay organized through interactive statistics, charts, and smart reminders.
- Secure authentication with Firebase Authentication
- User registration and login
- Email verification workflow
- Password recovery via email
- Persistent authentication sessions
- Account deletion support
- Secure Cloud Firestore Security Rules
- User-specific data access control
- Add income and expense transactions
- Edit existing transactions
- Delete transactions
- Categorize transactions
- Cloud-synced transaction history
- Real-time data updates with Firestore
- Interactive financial charts and analytics
- Income and expense visualization
- Category-based spending analysis
- Financial statistics and reports
- Transaction history overview
- Responsive UI for different screen sizes
- Material 3 design system
- Light and Dark theme support
- Daily reminder notifications
- User profile management
- Persistent user preferences
- Cloud Firestore integration
- User profile storage
- Account creation timestamp tracking
- SharedPreferences for local settings persistence
- Export transaction history to CSV files
- Save exported reports locally on device
- File management and storage support
The application follows a scalable architecture with Riverpod for state management and Firebase services for backend functionality.
- Riverpod
- Firebase Authentication
- Cloud Firestore
- SharedPreferences
- Flutter Local Notifications
- Timezone-aware notification scheduling
- Flutter
- Dart
- Riverpod
- Firebase Authentication
- Cloud Firestore
- SharedPreferences
- Flutter Local Notifications
- Syncfusion Flutter Charts
- CSV Export
- Material 3
- Secure authentication and authorization
- Firestore Security Rules implementation
- Cloud-synchronized financial data
- Interactive charts and financial insights
- Responsive Material 3 interface
- Theme customization (Light/Dark)
- Daily reminder notifications
- Scalable state management with Riverpod
- Flutter SDK
- Firebase Project
- Android Studio or VS Code
git clone https://github.com/your-username/flutter-expense-tracker.git
cd flutter-expense-tracker
flutter pub get
flutter run-
Create a Firebase project.
-
Enable Email/Password Authentication.
-
Create a Cloud Firestore database.
-
Add Firebase configuration files:
google-services.jsonGoogleService-Info.plist
-
Run the application.
This project is intended for educational, learning, and portfolio purposes.