This is an interactive manual and tutorial for beanquery — a customizable, extensible, lightweight SQL-like query tool for Beancount ledger data.
This document is intended as a follow-up to the Beancount v2 Beancount Query Language document.
It was created with the following goals in mind:
- to cover the latest features of beanquery
- to include many real examples using actual ledgers
- to be self-documenting: all query outputs are computed by running beanquery as part of the notebook execution
- to be interactive: when run as a marimo notebook, readers can experiment by changing the default ledgers and/or queries, with outputs updating automatically
Current state: work is ongoing. Comments, feedback and PRs are more than welcome!
You can read / open the manual in the following ways
1.1 As a static HTML file in the GitHub Pages
1.2 As an online interactive manual in the Marimo Molab cloud
To be able to interact with the manual (to change queries, ledgers) one has to run it as a marimo notebook. To achieve this do the following:
-
If not done yet, install uv for your OS, following the official instructions
-
Clone this directory:
git clone https://github.com/Ev2geny/beanquery-interactive-manual.git cd beanquery-interactive-manual -
Run the notebook in the view only mode:
uv run marimo run manual.py
Use the popping Table of Content on the right side to navigate the document
