54 lines
4.2 KiB
Markdown
54 lines
4.2 KiB
Markdown
# pub.solar finances
|
|
|
|
This repository is used to track the finances of pub.solar transparently.
|
|
We use [hledger](https://hledger.org/) to create finance report in a minimalistic, terminal friendly
|
|
way.
|
|
|
|
### Finances report table
|
|
|
|
<style>
|
|
td { padding:0 0.5em; }
|
|
td:nth-child(1) { white-space:nowrap; }
|
|
tr:nth-child(even) td { background-color:#eee; }
|
|
</style><link rel="stylesheet" href="hledger.css"><table><tr><th colspan="5" style="text-align:left"><h2>Income Statement 2023-01-01..2024-12-31</h2></th></tr><tr><th></th><th>Commodity</th><th>2023</th><th>2024</th><th>Total</th></tr><tr><td colspan="5"> </td></tr><tr><th colspan="5" style="text-align:left">Revenues</th></tr><tr><td class="account" style="text-align:left">donations:member</td><td class="amount" style="text-align:right">€</td><td class="amount" style="text-align:right">415.00</td><td class="amount" style="text-align:right">390.00</td><td class="amount rowtotal" style="text-align:right">805.00</td></tr><tr><td class="account" style="text-align:left">donations:non-member</td><td class="amount" style="text-align:right">€</td><td class="amount" style="text-align:right">87.00</td><td class="amount" style="text-align:right">74.43</td><td class="amount rowtotal" style="text-align:right">161.43</td></tr><tr><th style="text-align:left">total</th><th class="amount coltotal" style="text-align:right">€</th><th class="amount coltotal" style="text-align:right">502.00</th><th class="amount coltotal" style="text-align:right">464.43</th><th class="amount coltotal" style="text-align:right">966.43</th></tr><tr><td colspan="5"> </td></tr><tr><th colspan="5" style="text-align:left">Expenses</th></tr><tr><td class="account" style="text-align:left">infra:domain</td><td class="amount" style="text-align:right">€</td><td class="amount" style="text-align:right">52.40</td><td class="amount" style="text-align:right">0</td><td class="amount rowtotal" style="text-align:right">52.40</td></tr><tr><td class="account" style="text-align:left">infra:file-storage</td><td class="amount" style="text-align:right">€</td><td class="amount" style="text-align:right">26.02</td><td class="amount" style="text-align:right">11.77</td><td class="amount rowtotal" style="text-align:right">37.79</td></tr><tr><td class="account" style="text-align:left">infra:server</td><td class="amount" style="text-align:right">€</td><td class="amount" style="text-align:right">124.47</td><td class="amount" style="text-align:right">91.87</td><td class="amount rowtotal" style="text-align:right">216.34</td></tr><tr><th style="text-align:left">total</th><th class="amount coltotal" style="text-align:right">€</th><th class="amount coltotal" style="text-align:right">202.89</th><th class="amount coltotal" style="text-align:right">103.64</th><th class="amount coltotal" style="text-align:right">306.53</th></tr><tr><td colspan="5"> </td></tr><tr><th style="text-align:left">Net:</th><th class="amount coltotal" style="text-align:right">€</th><th class="amount coltotal" style="text-align:right">299.11</th><th class="amount coltotal" style="text-align:right">360.79</th><th class="amount coltotal" style="text-align:right">659.90</th></tr></table>
|
|
|
|
### 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](https://nixos.org/download), the package manager.
|
|
|
|
```
|
|
git clone gitea@git.pub.solar:pub-solar/finances.git finances && cd $_
|
|
nix develop
|
|
```
|
|
|
|
or with [direnv](https://github.com/nix-community/nix-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 -i '8r /dev/stdin' README.md
|
|
sed -i '14,17d' README.md
|
|
```
|