Spaces:
Sleeping
Sleeping
A newer version of the Gradio SDK is available:
6.6.0
metadata
title: BudgetBuddy – Personal Finance Agent
emoji: 💰
colorFrom: blue
colorTo: green
sdk: gradio
sdk_version: 6.0.1
app_file: app.py
pinned: false
short_description: Autonomous Personal Finance Agent
BudgetBuddy — Autonomous Personal Finance Agent (Hugging Face Space ready)
This repository contains a Gradio app that parses bank CSVs, auto-categorizes transactions, produces summaries, and predicts next-month expenses per category.
What's included
app.py— Gradio app entrypointfinance_utils.py— helpers for parsing, categorization, summary, predictionrequirements.txt— Python dependenciesdata/— place your CSV files here (sample datasets can be included)
How to use on Hugging Face Spaces
- Create a new Space (Gradio) on Hugging Face: https://huggingface.co/new-space
- Choose Gradio and set repo visibility (public/private as you like).
- Upload the contents of this folder into the Space repository (you can drag-and-drop files in the web UI or push via git).
- Option A — Bundled datasets: put your CSVs in the
data/folder of the repo before deployment (they will be available to the app at startup). - Option B — Runtime upload: users can upload CSVs directly through the app UI using the file uploader.
- Start the Space. The Gradio app will appear on the Space page.
External datasets and sources (suggestions)
You can use your bank's CSV export or any of these public datasets to test:
- Kaggle — Personal Finance datasets (search: "personal finance transactions" on https://kaggle.com)
- "Personal Finance Dataset" — sample CSVs (you may replace them with your own)
- Open banking sandbox CSVs (for larger tests)
Notes on real data
- Use your own bank CSVs (download export from your bank/UPI/wallet). Column names differ across banks;
finance_utils.pyapplies heuristics to handle variations. - Remove or anonymize personal identifiers before sharing publicly.
Uploading CSVs after deployment
- Use the web UI file uploader in the Gradio app to upload multiple CSVs at runtime.
- Or commit CSVs into the
data/folder of the repo (recommended for demo reproducibility).