Inspiration

Being college students, we constantly face the harsh reality of financial independence for the first time, balancing tuition, housing, groceries, and social life all at once. Between student loans, confusing billing systems, and the temptation to spend on small joys like coffee or food delivery, staying financially stable feels like an impossible task. Many of us weren’t taught how to budget properly before college, and trial and error has become our only teacher, often at a painful cost.

What it does

ANTracks helps students build healthy financial habits by tracking income, expenses, savings, and financial goals all in one place. Instead of overwhelming users with charts and numbers, ANTracks provides an easy to use, user-friendly interface that prevents students from the headaches of trying to maneuver another complicated web page. ANTracks also breaks expenses into simple, easy-to-understand categories: fixed, variable, intermittent, and discretionary. This allows students to recognize and record exactly where their money is going. If students are unsure of the differences between the types of expenses, there is a help button so students can learn instantly without needing to do outside research.

How we built it

Backend team: We started by first setting up a Flask server using the Zot Hacks starter pack to handle the communication between our frontend and the Gemini API. We then prioritized what we wanted to do with our backend after initializing what inputs our frontend would be taking from the user. We needed a backend that could take in financial data, then send that to Google’s Gemini model, and then return budgeting insights. We first had to create and test Flask and once our server worked, we integrated the Gemini API to generate responses based on the data there. The way we returned these budgeting insights was through a prompt that took in variables from the front end, then formatted them in a way that we could send back to our backend. We had to structure our response into JSON so that the frontend could then display the results.

Frontend team: we first familiarized ourselves with web development languages by doing some background research and reading the starter pack provided by ZotHacks 2025. We started our development by referencing the starter pack to know where and how to start coding for our website. Then, we pulled specific elements in the starter pack that were relevant to our project and expanded upon them to create different designs like text blocks, buttons, labels, embed images, and more. We played around with the color selection and aesthetic design of our web page until we were satisfied with what we had. Then, we checked in with the backend team so we could match our input/output boxes with the logic that our teammates implemented. Finally, we did some error handling to prevent invalid user inputs, unexpected crashes, and edge cases relating to our project.

Challenges we ran into

We didn’t have a lot of experience with building projects from scratch, as all teammates are still working through lower division programming classes and were new to hackathons. Therefore, we had to learn a lot from trial and error (and our awesome mentor) in terms of where to start, how to code certain features, how to make valid connections to Gemini API, and how to use the many different languages. There was a lot of learning and a lot of work to be done but by keeping an open mind, asking a lot of questions, and persevering through challenges, we got through it!

Accomplishments that we're proud of

One of our biggest accomplishments that we’re proud of is just creating a project that runs and actually has a functional workflow. As a group of beginners who have little to no experience with creating any projects, seeing our (although simple) idea come to life on the screen was a huge moment for us. We’re proud that we were able to implement the starter packs and use tools that many of us have never seen before, namely Flask and implementing gemini api.

What we learned

A LOT! Since we are all first and second-year students, our previous experience was mostly limited to Python and Java. Therefore, working with frontend development, we learned a lot about web development languages like HTML/CSS/JavaScript. Through backend development, we learned how to work with APIs, incorporate AI in our code, and use Flask. Together, we all learned how to merge the frontend and backend together to create a complete and functional project. Lastly, we also increased our proficiency in how to use new tools/extensions like GitHub.

What's next for ANTracks

We would like to extend it to work for weekly and yearly budgeting, as right now it only allows for a monthly scale. We would also like to make the interface a little more appealing, as our limited knowledge of how to design an interface, especially using HTML, is definitely evident in our project. Furthermore, we would like to add account creation to keep a history of spending and past months, so that users could observe trends and have a record of their budgeting throughout time.

Share this project:

Updates