Inspiration

Based on our research we found out that the average personal loan and overdraft balances for borrowers from 21 to 29 years old shot up to $49,689 in the first quarter of 2021, about 42 per cent higher than the average of $34,941 in the first quarter of 2020. Based on a survey by Singapore Management University targeting youths we found out that 1 in 3 young adults in Singapore are not confident in managing debt 33% of respondents are not confident in managing debt and 19% found it difficult to make ends meet. 98% would find it easy to arrange for emergency purchases while 22% would find it difficult to arrange for emergency cash.

What it does

Thus, we came up with the idea of Budget Savvy. A budgeting tool that helps students in budgeting their finances. It is easy to use, has features such as result summary to view a summary of your spending in a glance and allows you to share your result with others.

How we built it

We build this tool using JavaScript, HTML and CSS and used Heroku for hosting.

Challenges we ran into

Adeline: One of the challenges that I faced is the use of GitHub to collaborate with other members in my team. When I stage a change and commit a code, despite commenting out the code and making comments in the code itself, it will cause a conflict when I want to pull request from other collaborators. To not cause any more confusion and clashes on GitHub, on my end in my local computer, I had to unstage changes and remove the changes in my Visual Studio Code that caused my whole application to not work, so that I can pull and view the changes my other teammates have made. I learn how to use GitHub more proficiently such as giving meaningful naming convention, learn the terms such as ‘Commit’, ‘Pull’, ‘Fork’, ‘Merge’, etc and its specific uses. I also learn that it is easier to just use GitHub desktop because it is easier to pull request that way and that I can also view changes too. GitHub desktop saves me a lot of time when I want to pull requests from the repository because I am very used to interacting with graphical user interfaces (GUI) instead of writing command lines or a web browser. I also do not know some of the command lines to write when pulling a change from GitHub so it is better to just use GitHub desktop instead and it is more user-friendly than just plain writing command lines. Although many developers don’t recommend GitHub desktop, in my opinion, using GitHub desktop is just a personal preference and there is no need to force other collaborators and they are not obliged to, to use it when they feel uncomfortable with it.

Chanel:The one key challenge I face was I was unable to write my backend code. I was not confident in doing the backend as most of my part for this project was the front end and the designing. I have to link the pages and make sure all the buttons work. Some files are not linked correctly, I have to rename the file and make sure they are linked correctly. I have also fixed on the progress bar and the navigation bar to make sure all the pages are correct. In some pages, there are input fill errors and do check on the alert or the pop up working before processing to other page. Althoght i am weaker in backend i did try to help my members on doing the alert and pop up by googling and trying different ways to make it work.

Jihan:Challenges I faced are I was unsure what to do next when I completed the basic front end for the home page. I knew I had to contribute to the backend part of the project but I was unsure on how to do it. I overcame this challenges by testing the website as a user and found out what is wrong with the flow of the application. Through testing, I found out that user are able to proceed to the next page of the website without inputting any value for the name, amount, date and frequency. It was the same for other pages, user is able to proceed without any alert informing them they should input a value. Hence, I managed to fix that bug fr the home and spending page.

Wan Ting:Using API to fetch and get from a server which I don't really know the full details of. This requires me to fully understand what each line of the code does and to play around with the server to find out what certain things represents. For example: the number that is provided when I do a FETCH POST is actually a UNIX timestamp. Another challenge is hosting on Heroku, I had a lot of errors that I haven't encountered before which I later found out was due to error in routing. It was very challenging as I am not very experienced in hosting but was nevertheless a fulfilling experience as I learnt a lot and managed to host by myself with the help of Jolene.

Jolene:The challenges that I ran into is mostly on spending page. For the Income page, the main problem I ran into is that how am I going to store the data into session storage, yet the interface still looks good. Initially I wanted it to have a “submit” button so once the user has inputted the income amount, user has to press submit before proceeding to the next page. However, not only the interface does not look good, it is troublesome and confusing as well. For the spending page, we do not know how to save each category’s input into session storage separately and mostly on styling as I have way too many pictures for spending pages. As for the challenges that I have faced working as a team is communications and commitments. As everyone has a different schedule, it is difficult to compromise the meeting data and time with everyone. The challenges that I ran into is mostly on spending page. For the Income page, the main problem I ran into is that how am I going to store the data into session storage, yet the interface still looks good. Initially I wanted it to have a “submit” button so once the user has inputted the income amount, user has to press submit before proceeding to the next page. However, not only the interface does not look good, it is troublesome and confusing as well. For the spending page, we do not know how to save each category’s input into session storage separately and mostly on styling as I have way too many pictures for spending pages. As for the challenges that I have faced working as a team is communications and commitments. As everyone has a different schedule, it is difficult to compromise the meeting data and time with everyone.

Accomplishments that we're proud of

It is working and hosted. Users who provided feedback for our wireframes mentioned that there were many improvements between the wireframe and the final product which we are very happy about.

What we learned

We learn that when we work as a team while documenting on GitHub, we learn to make several branches so that our source code will not be overwritten and caused a clash. Branches are important because it is like creating many choices and solutions to the problem we are solving. We has also learned how to work with each other strengths and weaknesses. By comparing codes throughout the branches, we will then vote on which one is better and further improve it.

We have also kept checking with each other so that we can keep track of the progress of each member and find out what they are struggling with so that we can figure it out and help them. This also helps the group to know whether a member is contributing to the project or not. Besides that, I think it is also important to set deadlines on tasks so that everyone will try to complete the task by said deadline.

What's next for Budget Savvy

We hope to add in fun quizzes and short articles to help students boost their financial literacy skills.

Share this project:

Updates