← Back to projects

ICS4U · Project 01 · 2026

Personal
Finance Manager.

A windowed finance tracker built with tkinter. Make an account, log your income and expenses, set budgets per category, and let matplotlib chart where the money's going.

I — What it does

What it does.

  1. Accounts
    Make an account, log in, and your balance and history are waiting for you each time you come back.
  2. Transactions
    Add income and expenses with a category and description. They show up in a table you can scroll through and delete from.
  3. Budgets
    Set a budget per category, then check a report that shows what you budgeted, what you've spent, and what's left.
  4. Charts
    Matplotlib draws a bar chart of spending by category, so you can see where the money actually goes.
  5. Storage
    Everything saves to a JSON file and loads back when the program starts, so nothing's lost between sessions.
  6. Error handling
    A missing or corrupted data file doesn't crash it — the program just starts you off with empty data instead.
II — Built with

What's under the hood.

Built with tkinter·Matplotlib·JSON·Datetime·OS. The rest is just plain Python.

III — Run it yourself

Run it on your own computer.

It's a tkinter desktop app, so it opens in its own window — it won't run in the browser. Grab the file and run it locally.

  1. Make sure you've got Python 3, plus matplotlib installed.
  2. Open finance.py in anything that runs Python. IDLE, VS Code, etc.
  3. Run it — a window pops up. Make an account and start adding transactions.