🦅 Inspiration

University students often operate in a "financial fog." Tuition invoices are opaque, incidental fees are hidden in obscure PDFs, and the long-term impact of today’s spending, like car payments or meal plans, is almost impossible to visualize over a 40-year horizon.

We built BudgetHawk to provide a "Financial Flight Cockpit." We wanted to move past static spreadsheets and create a dynamic simulation engine that answers: "If I start a BBA in 2026, live in Bricker Residence, and commute in a Honda Civic—where will my net worth be when I'm 30? Or 60?"

🛠️ What it does

BudgetHawk is an AI-powered, single-page financial intelligence platform tailored for Wilfrid Laurier University students. It guides users through a 5-step onboarding process to map out their exact collegiate profile and then projects their financial trajectory from their first term through to retirement.

Key Capabilities:

  • The Expense Command Center: Uses an institutional dataset to pull real Laurier tuition, residence, and incidental fee data (Health, Dental, U-Pass, etc.) based on the user's specific degree and residency.
  • Transportation Reality: Integrates historical Canadian gas price trends and car-specific fuel efficiency (L/100km) to model real-world commuting costs.
  • Post-Grad Wealth Simulator: A sophisticated investment engine that models net worth growth, featuring a 2025 Canadian Tax Engine (Federal + Ontario brackets, CPP2, and EI) and inflation-adjusted target tracking.
  • Gemini AI Copilot: Uses gemini-2.5-flash for one critical task:
    1. AI Salary Estimation: Predicting post-grad income based on degree and target job title.

⚙️ How we built it

  • Backend: A modular Python/Flask architecture. We used Pandas to process the institutional Excel datasets and Jinja2 for dynamic templating.
  • Frontend: A high-end UI built with Tailwind CSS and JavaScript. We utilized Chart.js for the real-time trajectory visualizations and html2pdf.js for professional financial statement exports.
  • AI Integration: Leveraged the Google Gemini API for text-based career forecasting.
  • Financial Logic: We hard-coded the actual data for 2025 Canadian tax brackets and CPP/EI maximums to ensure the "After-Tax Salary" calculations were as accurate as possible for Ontario graduates.

🧠 Challenges we ran into

One of the biggest hurdles was the Data Normalization of the Laurier fee structures. Tuition and incidental fees vary widely by credit load, entry year, and campus. We had to build a robust lookup system in data_store.py that could handle these variables without slowing down the single-page experience. Additionally, syncing the "Student Burn Rate" from the Budget tab into the "Starting Debt" of the Investment tab required careful state management to ensure a seamless user flow.

🏆 Accomplishments that we're proud of

  • The Tax Engine: We are incredibly proud of the accuracy of our 2025 tax simulator. It doesn't just estimate; it calculates based on real legislative brackets.
  • Seamless UI: Creating a tool that handles complex financial data while remaining "clean" and accessible to a 17-year-old student.
  • The Transition Logic: Successfully bridging the gap between "Student Life" (spending money) and "Professional Life" (investing money) in a single, continuous timeline.

📖 What we learned

We learned the importance of Data-Driven Storytelling. Seeing a graph plummet into debt during school years and then exponentially grow due to compound interest is a powerful motivator. We also gained deep experience in prompt engineering for Gemini to ensure salary estimates remained realistic rather than overly optimistic.


🛠 Tech Stack

Python, Flask, JavaScript, Tailwind CSS, Google Gemini AI, Chart.js, Pandas

Share this project:

Updates