The Expense Tracker
Try it yourself. Works on Android & iOS
About the App
Led by the belief that anyone can grow
Managing finances is crucial for individuals to achieve their financial goals. Our expense tracker app using Flutter, Dart, and Firebase simplifies the process of expense tracking, budgeting, and financial management.
Made Using
Flutter
(Framework)
Dart
(Programming Language)
Firebase
(Database)
Features
Analyze Expenses
Analyze expenses in 8 categories, which include Grocery, Bills, Entertainment, Food, Medical, Shopping, Transportation and Miscellaneous, using graphs
Manage Expenses
Record expenses in various categories and manage them on the basis of time, date, and also by adding a note.
Secured
By storing data in cloud the app is end - to - end secured & encrypted and has secured login process which also provides resetting your password.
Cloud Storage
Storing the data in cloud allows the user to access their app from any part of the world.
How the App Works
Introductory Pages
The 3 Introductory pages are made using 2 packages:
1. smooth_page_indicator - Customizable animated page indicator with a set of built-in effects.
2. lottie - Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with Bodymovin and renders them natively on mobile.
All the animations are availabel at LottieFiles.
Login, Password Reset, & Register Pages
-
All the 3 pages are connected to Firebase Authentication.
-
Which allows us to safely verify the users and successfully sign in them.
-
The Registration data is stored in Firebase FireStore.
Home Page
-
Displays users First Name, which is being fetched from Firebase, by verifying the email with the email stored in Firebase Authentication.
-
8 Categories allows users to manage their expenses efficiently.
-
There are 8 individual category pages which get the data from Firebase.
-
The bottom navigation bar is made using a package called curved_navigation_bar.
-
curved_navigation_bar - is a a Flutter package for easy implementation of curved navigation bar.
-
The bottom navigation bar is fixed and when out of 5 icons any 1 icon is clicked, then in the body area particular pages are being called.
Analytics Page
-
The Analytics page is made using a package called syncfusion_flutter_charts.
-
syncfusion_flutter_charts - The Flutter Charts package is a data visualization library written natively in Dart for creating beautiful, animated and high-performance charts, which are used to craft high-quality mobile app user interfaces using Flutter.
Add Transaction Page
-
This page is made using Stepper Widget.
-
Stepper Widget - A material stepper widget that displays progress through a sequence of steps.
-
There are total 4 Steps, where:
-
User has to select whether they are entering Income or Expense.
-
Enter the amount.
-
Select Date & Time.
-
Enter a Note.
-
Click on Add Transaction button.
Transaction History
-
This page list down all the transactions a user has entered from Firebase.
User Page
-
This page is divided into 4 parts.
-
My Profile - Where all the user data gets read from Firebase into the Text Box. Users can also change their profile image.
-
Change Password - which sends a password reset link to their registered email id.
-
Set Goal - Users can even set goals in each category.
-
Logout - which sign out the user from the app.