© 2021 Nilushanth Thiruchelvam, BudgetVision.
-
This application takes into the account of users income and monthly expenses to create a daily budget and summary of expenses for them.
-
The summary of expenses can be read out loud via text to speech.
-
The user can sign in to BudgetVision to export the summary of expenses in to their google account google sheet.
-
The user has the option to apply currency conversion to one of the top 25 most traded currencies in the world which is done from using the Bank of Canada website exchange rates.
-
No connecting to bank account. No sharing of private data.
-
BudgetVision is an Android application created in Java using Android Studio IDE implemented with the dependency injection design pattern using Dagger2 open source library and MCV framework.
-
XML (Extensible Markup Language) is used to create the user interface elements.
-
5 total categories; Food, Housing, Commute, Lifestyle and Recreation. For each category a restriction of 50 subcategories are placed in which the user cannot exceed. The reason for a maximum of 50 subcategories is due to the fact there are already 5 total categories. Thus, 5 * 50 = 250 subcategories in total. Moreover, restricting the total amount of subcategories allows the user to carefully consider their subcategories and their budget plan accordingly.
-
Calculates the users daily budget based on income and monthly expenses.
-
A summary table of all expenses formatted in unsorted order. With an option to sort the expenses in ascending alphabetical order, descending alphabetical order, low to high expenses, high to low expenses. Summary table can be read out loud via Text To Speech.
-
Google Sheets API is used to export a google sheet with detailed monthly user transactions within the app with just a click of a button.
-
JUnit is used for unit testing BudgetVision. In the folder "CodingProject.budgetvision" contains the JUnit test file called "BudgetVisionTests".
-
The tests are created to find potential errors to prevent bugs and prevent user from crashing the application.
The app when initially opened for the first time. The "card" elements can be swiped as shown below.
| default app (part one) | default app (part two) |
![]() |
![]() |
The app when initially clicking the food, housing, commute, lifestyle and recreation cards as shown below.
| commute card popup | food card popup | housing card popup | lifestyle card popup | recreation card popup |
![]() |
![]() |
![]() |
![]() |
![]() |
The app when clicking the "home button", "money button", and "settings button" in the bottom navigation view.
| clicked bottom navigation "home" | clicked bottom navigation "money" | clicked bottom navigation "settings" |
| ![]() |
![]() |
The app when adding/removing income, adding a new expense to an existing subcategory, and removing an existing subcategory expense.
| Add or remove income | Add expense to existing subcategory | Remove existing subcategory expense" |
| ![]() |
![]() |
The app when using google sign-in.
| BudgetVision google sign-in permissions | BudgetVision spreadsheet url displayed |
| ![]() |
The app after adding a food expense.
| Adding food expense | Daily budget & total income after food expense | View all expenses after food expense |
| ![]() |
![]() |
The app after converting currency from default CAD to EUROPEAN EURO. (after adding multiple expenses).
| View all expenses after adding multiple expenses. | Enable currency conversion in settings to EUROPEAN EURO | Daily budget & total income after conversion | View all expenses after currency conversion. |
![]() |
| ![]() |
![]() |
The app after adding additional users to keep track of and moniter other individual expenses. An example of converting to EUROPEAN EURO is also shown below.
| Adding two additional new users nilu & thiru | Added multiple expenses for user nilu | View all expenses after conversion to euro |
![]() |
![]() |
![]() |
























