finances/README.md

4.3 KiB

pub.solar finances

This repository is used to track the finances of pub.solar transparently. We use hledger to create finance report in a minimalistic, terminal friendly way.

Finances report table

Income Statement 2023-01-01..2024-12-31

Commodity20232024Total
 
Revenues
donations:member415.00422.87837.87
donations:non-member87.00119.43206.43
total502.00542.301044.30
 
Expenses
infra:domain52.40052.40
infra:file-storage26.0223.4449.46
infra:server124.47162.20286.67
total202.89185.64388.53
 
Net:299.11356.66655.77

Import new statements

  • place csv file into import directory
    • rename to expenses.csv for expenses or
    • rename to donations-member.csv for donations of members
    • rename to donations-non-member.csv for donations of non-members
  • execute hledger import -f finances.hledger import/<csv-file>

Quick start how to use hledger

Installing hledger with nix, the package manager.

git clone gitea@git.pub.solar:pub-solar/finances.git finances && cd $_
nix develop

or with direnv.

git clone gitea@git.pub.solar:pub-solar/finances.git finances && cd $_
direnv allow

Creating a report without negative numbers

hledger incomestatement --file ./finances.hledger --layout bare --pretty --drop 1

Creating a web report, viewable in a browser

hledger-web --file ./finances.hledger

Writing a HTML table to the README

hledger incomestatement --file ./finances.hledger --layout bare --pretty --drop 1 --output-format html --yearly --row-total \
  | sed 's|</table>|</table>\n|' \
  | sed -i '/^<style>/,/^<\/style>/{
      r /dev/stdin
      d
    }' README.md