Skip to content

AshishSalaskar1/SmartBudgetTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SmartBudgetTracker

SmartBudgetTracker is a local-first personal budget tracker with an AI-assisted statement parser. It turns monthly statements into clean dashboards with spending trends, category insights, and yearly rollups.

Landing experience with a modern product overview and login panel. Landing_Page.png

Statement upload flow with month/year selection and replace handling. Upload_Page.png

Yearly dashboard with summary insights, charts, and trends. Yearly_Page_(1).png

Monthly deep dive with category spend, cashflow, and transactions. Monthly-Page-(1).png

Features

  • Local-first FastAPI backend with DuckDB storage
  • Azure OpenAI extraction for PDF/CSV/XLSX statements
  • Monthly and yearly analytics dashboards
  • Modern UI with rich charts and filters
  • Simple auth for two local users
  • Replace/keep upload behavior for existing months

Tech Stack

  • Backend: FastAPI, DuckDB, Pydantic, openai (Azure OpenAI)
  • Frontend: React + Vite + TypeScript, Recharts
  • Auth: simple bearer token (local)

Prerequisites

  • Python 3.11+
  • Node.js 20+
  • Azure AI Foundry credentials (endpoint + API key + deployment name)

Quick Start

Backend

  1. Create a virtual environment and install dependencies.
  2. Configure environment variables (example below).
  3. Run the API server.

Example .env (backend/.env):

AZURE_AI_ENDPOINT=
AZURE_AI_API_KEY=
AZURE_AI_DEPLOYMENT=
DB_PATH=/home/you/.smartbudget/duckdb.db
APP_ADMIN_USERNAME=admin
APP_ADMIN_PASSWORD=admin123
APP_USER_USERNAME=user
APP_USER_PASSWORD=user123

Frontend

  1. Install dependencies.
  2. Configure the API base URL (example below).
  3. Start the dev server.

Example .env (frontend/.env):

VITE_API_BASE=/api

Running Locally

The frontend proxies /api requests to the backend in development.

Usage

  1. Login with a local user.
  2. Upload a statement (PDF/CSV/XLSX) with month and year.
  3. Explore monthly and yearly insights, charts, and transactions.

Notes

  • Investments are excluded from expense calculations and charts.
  • If a month already exists, you’ll be prompted to replace or keep.

License

MIT

About

SmartBudgetTracker is a local-first personal budget tracker with an AI-assisted statement parser. It turns monthly statements into clean dashboards with spending trends, category insights, and yearly rollups.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors