A command-line app for logging income and expenses, categorizing them, and seeing a running balance and spend-by-category summary — with everything saved to disk so your data persists between runs.
Built as Day 1 of a 7-day Python project sprint (beginner → portfolio-ready).
- Add a transaction (amount, type, category, date, note)
- View all transactions, filterable by category and date range
- Running balance and total spend per category
- Data automatically saved to and loaded from
transactions.json - Input validation so a bad entry (letters instead of a number, etc.) won't crash the app
- Python 3.10+
- No external dependencies — standard library only
git clone <your-repo-url>
cd finance-tracker
python tracker.pyThat's it — no virtual environment or installs needed for this one, since it only uses the standard library.
Run the script and follow the on-screen menu:
1. Add transaction
2. View transactions
3. View summary
4. Quit
Transactions are saved automatically after every change — you can quit and relaunch at any time without losing data.
Each transaction is stored as:
{
"date": "2026-07-22",
"amount": 45.00,
"type": "expense",
"category": "groceries",
"note": "weekly shop"
}- Monthly budget limit warning
- ASCII bar chart of spending by category
- CSV export