Skip to content
 
 

Repository files navigation

BudgetBuddy — AI-Powered Personal Finance Tracker

Author: Ahmed Furkhan Class: CS 5610 Web Development — Northeastern University Class link: https://johnguerra.co/classes/webDevelopment_online_summer_2026/

Project Objective

BudgetBuddy helps people track spending without manual categorization. When a user logs a transaction, the Groq API automatically assigns a spending category, and the app shows a live dashboard of spending vs. monthly budgets plus savings-goal tracking.

Screenshot

Dashboard screenshot

Features

  • User accounts with secure password hashing (bcrypt) and sessions
  • Transaction logging with AI auto-categorization (Groq, llama-3.3-70b-versatile)
  • Monthly budgets per category with full CRUD
  • Spending-vs-budget dashboard with aggregation
  • Savings goals with contribution tracking

Tech Stack

  • Node.js + Express (ESM)
  • MongoDB (native driver — no Mongoose)
  • Vanilla ES6 frontend (client-side rendering)
  • Groq API for categorization

Build & Run Instructions

  1. Clone the repo and install dependencies:
    npm install
    
  2. Copy .env.example to .env and fill in your values:
    MONGO_URI=...
    GROQ_API_KEY=...
    SESSION_SECRET=...
    
  3. Seed the database with 1,000+ sample transactions:
    npm run seed
    
  4. Start the server:
    npm start
    
  5. Open http://localhost:3000 Demo login: james@northeastern.edu / demo1234

GenAI Disclosure

This project uses the Groq API (llama-3.3-70b-versatile) as a runtime feature for transaction categorization. Generative AI tools were also used to assist with scaffolding and boilerplate; all code was reviewed and understood by the author.

License

MIT — see LICENSE.

About

Project 2 - Peer Review

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages