Hey Umbrel community! I’m BrewGator, and I’ve been running a node on Umbrel for a few years. I built Satsbook because I couldn’t answer one simple question: how much Bitcoin do I actually have, and what did it cost me?
ThunderHub shows forwarding events. RTL shows channel balances. Strike has its own CSV. River has another. None of them talk to each other. So I built something that does.
Satsbook is a general ledger for your Lightning node. It stitches together your node’s routing income and your exchange purchase history into one unified view, running entirely on your own hardware.
What it does:
-
Shows your total net BTC position across routing fees + exchange purchases
-
YTD routing income, channel earnings breakdown, and cost basis
-
Imports CSVs from Strike, River, and Coinbase - deduplicates automatically
-
Connects to LND via a read-only macaroon (it cannot send or sign anything)
-
Single Go binary, ~25MB, runs natively on a Pi
Install in about 30 seconds:
Umbrel → App Store → Community App Stores → Add Store
https://github.com/satsbook/umbrel-app-store
Import one CSV. Look at your dashboard. Tell me what surprised you.
Full writeup on why the gap exists and how it works: https://brewgator.substack.com/p/the-missing-ledger
Questions welcome here. If something doesn’t match what your node reports, post it in GitHub Discussions.
MIT licensed. Runs on your hardware. Never phones home.
— BrewGator