rene00 / penny

An experimental Personal Finance Tracking Application

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Penny

Penny is personal finance tracking web application.

Current Status

WARNING: penny is experimental.

It's missing alot of features that you would expect in a personal finance tracking application. I continue to work on it during my free time but would recommend using other free and open applications such as gnucash.

Install & Run

The quickest and easiest way to run Penny is to build and run the docker container:

$ task docker:build docker:run

Then visit http://localhost:5000 in your browser.

If you want to build and run Penny from source, first start redis on localhost:6379.

Then build:

$ task build

And run the web app:

$ task run:www

And finally, in another terminal, run the queue system:

$ task run:queue

The queue system is backed by redis and defaults to connecting to redis on localhost:6379.

Dependencies

A list of hard dependencies that are needed when building Penny:

  • python 3.9:
    • Current build system expects python 3.9. Some of the python packages used by penny are failing to build with the latest version of python (3.11 at time of writing).

Get Started

Visit http://localhost:5000/register and register your first account.

Once you've logged in, create an Entity. Entities are Companies, Sole Traders or a Person.

Next, create a Bank Account. A Bank Account has a Type such as Savings or Credit Card. A Bank Account belongs to an Entity.

Next, create a Transaction. A Transaction is linked to a Bank Account, which in turn is linked to an Entity.

A Transaction can also be linked to an Account. Accounts have a Type such as Expense or Liability. Accounts are also linked to Entities.

Transactions can be automatically matched to Accounts by Account Matches. Account Matches apply filters to link Transactions to Accounts.

The only type of report that is currently supported is a Profit and Loss report. P&L reports are automatically created for Entities and Bank Accounts.

About

An experimental Personal Finance Tracking Application


Languages

Language:JavaScript 35.5%Language:CSS 21.4%Language:Python 19.0%Language:HTML 10.4%Language:SCSS 7.5%Language:Less 5.9%Language:Dockerfile 0.1%Language:Makefile 0.1%Language:Mako 0.0%Language:Shell 0.0%Language:Procfile 0.0%