• Stars
    star
    203
  • Rank 192,890 (Top 4 %)
  • Language
    Go
  • License
    MIT License
  • Created about 2 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A beautiful terminal dashboard for hledger πŸ’°

Puffin

TUI to manage your personal finances. Uses hledger and bubbletea.

Note

The actual accounting application used is hledger Puffin will NOT work without it. Puffin makes it easier to interact with hledger. (similar to lazygit!)

Table Of Contents

Demo

Browsing transactions and balance

Account filter

Date filter

Installation

Pre-requisites

  • hledger is required for puffin to work.
  • make
  • Go compiler (>=1.17)

Build

  • Clone this repo
  • Run the command make build. This creates the binary puffin.

Run demo

  • Clone this repo
  • Run make start

Run with your own journal file

  • Build using make build
  • Run using ./puffin. It automatically uses the $LEDGER_FILE environment variable

Custom path for the journal file

There are 2 ways to use a custom path for the journal file.

  1. Run with env var: LEDGER_FILE=<custom_path> ./puffin
  2. Run with args: ./puffin -file <custom_path>

Change hledger executable path

Run with ./puffin -exe <path_to_hledger>

Features

  • View transactions
  • View account balance
  • Filter transactions and balance by
    • account name
    • date

Keys

Key Feature
? toggle help (to remove)
q quit app/unfocus filters
r refresh data
f activate filters

Planned

  • Filter by exact dates (eg. 2022/10, 2021/06/23 etc)
  • Change account depth using +/-
  • Make filters visible
  • UI: Make income-statement look nicer (looks really boring)
  • Make tables/pagers scrollable
  • Create a new UI element to show hledger errors (eg. when running in Strict mode or balance assertion fails) - partially done
  • Add new transactions