BudgetBuddy / README.md
ParthBhuptani's picture
Update README.md
13b4311 verified
---
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 entrypoint
- `finance_utils.py` — helpers for parsing, categorization, summary, prediction
- `requirements.txt` — Python dependencies
- `data/` — place your CSV files here (sample datasets can be included)
## How to use on Hugging Face Spaces
1. Create a new Space (Gradio) on Hugging Face: https://huggingface.co/new-space
2. Choose **Gradio** and set repo visibility (public/private as you like).
3. Upload the contents of this folder into the Space repository (you can drag-and-drop files in the web UI or push via git).
4. 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).
5. Option B — Runtime upload: users can upload CSVs directly through the app UI using the file uploader.
6. 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.py` applies 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).