Zane Bartlett

Building a budgeting app in Notebooks

Read on GitHub

Table of Contents
  1. About the project
  2. Features
  3. Why make this?
  4. Setting up
  5. Using it
  6. Some Notes

About the project #

I built a budgeting app designed for tracking and management of monthly or quarterly budgets. Features include vendor identification, tagging and categorization, budget creation, and the auto-generation of charts for visual representation.

This is a good medium between using something a spreadsheet tool like google sheets and GNUCash, this budgeting tool focuses primarily on assisting users in achieving their financial goals within specific spending categories. For optimal results, I recommend only using this tool with only one or two primary expense accounts.

Features #

Generate fake data to test #

Concatenate files from multiple accounts #


Checks to see if new csvs have been added to save time loading #


Define your bank's csv profile, so that any bank should work #



Identify and automatically remove duplicate expenses #


Use regex patterns to match vendors and assign a tag to each vendor #


create budget with yaml files and use tags to group vendors in categories #


Checks are automatically run against budgets #


Premade graphs for understanding your spending #

image image

Plug in your salary (after taxes) to get basic information out about how much spending you have left in a given category for your budget


Add vendors, and update them to match if they rebrand #

Split transactions to handle situations like buying from Amazon but wanting the expense to go to multiple tags #

Why make this? #

Setting up #


Using it #

Generally the workflows are what you'd be using. There are three workflows at the time of writing. While they are written in order at the current time of writing, the titles are what will stay consistent for matching the workflow described below to the notebook.

Some Notes #