Table of Contents
As someone who is low income and has watched people spiral into debt, I have seen many people around me have trouble with managing their finances, which has led them into overspending, debt buildup, and difficulty saving for long-term goals and retirement. In order to stop this cycle, I want to build an informative, free application that helps people plan their budgets to make informed financial decisions and achieve financial stability.
Here's why:
- Money on My Mind has a user-friendly interface to make it easy for technical and non-technical people to use.
- Expense and income tracking is offered so that you can view your finances as a table or as a chart if you like visuals.
- Provide an informative, financial literacy tab with an in-app chat bot that you can ask for financial advice.
- Get a Google Calendar invite for upcoming expenses with due dates so that you don't forget!
This project requires Auth0! Please visit Auth0 to make an account and retrieve a domain and clientid. See .env.example for set up!
Step 1: Go to your terminal: clone the project and switch into the project directory.
git clone https://github.com/rubycmarroquin/MoneyOnMyMind.git
cd moneyonmymind
Step 2: Install all packages.
cd client && npm install && cd ../server && npm install
Step 3: Setup Environment Variables
- Copy the instructions from both .env.example files in the client and server.
Step 4: Connect the database and the data.
cd server
psql moneyonmymind -f db.sql
Step 5: Start the program!
cd server && npm run dev
[email protected]
TestAccount23!
Create an account with our secure login powered by Auth0!
When first logging in, users can see the current month/year's spending breakdown. Users are also able to switch between months and years where our charts that have been generated using React Google Charts and table are dynamically updated based on the month/year selected.
In the Budget's page, users are prompted to select a month and year for which they want to add an expense or income to. Users can edit an expense that has already been added or delete it!
Additionally, users are offered a "bell" option that allows them to get a Google calendar invitation that is generated using Google Calendar API! (never forget to pay your bills again~) The calendar invite is only available if an expense has a due date and if the date has not already passed (e.g., If it is May 25th, 2023 you cannot get one for January 1st, 2023). DISCLAIMER: If you want to use the calendar invite, you must use a valid email address during sign up!
Become informed, or watch some informative videos. The Financial Literacy Page is there to help educate to empower you to make good financial decisions! The videos displayed are rendered using the YouTube API and can change depending on video popularity, video deletion, etc...
The real show stopper of the Financal Literacy Page is "Money Mentor"! Money Mentor? You may ask, is an in-app chatbot that is powered by OpenAI API that provides financial advice based on a user's inquiry. (disclaimer: response times may vary depending on OpenAI API usage)
In the Account Settings, users are able to provide some basic information such as a name or phone number, not required. Additionally, users can request a password reset email that is generated using Auth0 Management API to securely change your password.
- Create Dashboard
- Display a summary of user spending using Google Charts React Library
- Current month uses Donut Chart
- Year overview using Combo Chart
- Display a table of the expenses
- Allow the user to switch between months and years
- Display a summary of user spending using Google Charts React Library
- Create Budget Page
- Let users add, modify and delete income items
- Let users add, modify and expense income items
- Allow users to select each month and year they want to add to
- Button that allows users to receive a google calendar invite for expenses with upcoming due dates.
- Generate calendar invite using Google Calendar API
- Create Account Settings Page
- Reset password email
- Form for user's name and phone number
- Financial Literacy Page
- Display financial videos using YouTube API
- In-app chat bot based with scope to finance using OpenAI API
In case you have a suggestion to improve the project, you can either fork the repository and initiate a pull request or raise an issue labeled as "enhancement".
Hey there! My name is Ruby Marroquin and my pronouns are she/her. I am from Los Angeles, California. After high school I went to community college, where I used to tutor in mathematics and eventually got my associates in math. I decided to pursue higher education and was the first in my family to attend university. I went to UC San Diego and was part of the Jacobs School of Engineering, where I planned on getting a computer science degree despite having a math background. Ultimately, the program was too expensive for me to stay, but that did not deter me from seeking a way into tech, which is how I ended up at Techtonica. Thank you for reading & I hope you enjoy Money on My Mind!
-
Project Link: Money on My Mind
-
GitHub Link: Money on My Mind