Web interface for beancount.
Built on Flask it relies on an artificial API (api.py
) that calls into beancount and returns Python-dict
s for consumption by the web application.
Many views are very buggy as this is just a quickly-hacked-together-version of what a new web interface for beancount might look like. Especially the filters (Year, Tag) are very buggy.
This is mainly a proof-of-concept and playground for figuring out what a new web interface for beancount should look (and feel) like, and not if the (numerical) results themselves are correct or not.
- Install beancount-web:
python setup.py install
. - Start beancount-web:
beancount-web /Volumes/Ledger/example.ledger
(substitute with the path to your own beancount-file) to run the included web server. - Point your browser at
http://localhost:5000
to view the web interface.
(many missing here)
beancount-web
comes with Gmail-style keyboard shortcuts:
?: Show keyboard shortcuts overview
Jumping to pages:
g then i: Go to Income Statement
g then b: Go to Balance Sheet
g then t: Go to Trial Balance
g then g: Go to General Journal
g then q: Go to Custom Query
g then h: Go to Holdings
g then w: Go to Net Worth
g then d: Go to Documents
g then n: Go to Notes
g then e: Go to Events
g then c: Go to Commodities
g then s: Go to Source
g then o: Go to Options
g then x: Go to Statistics
g then r: Go to Errors
Filtering:
f then t: Filter by Time ( pull down menu)
f then g: Filter by Tag ( pull down menu)
f then c: Filter by Component ( pull down menu)
f then p: Filter by Payee ( pull down menu)
Options in transaction pages:
l: show/hide legs
s then l: show/hide legs (duplicate shortcut for consistency)
m: show/hide metadata
s then m: show/hide metadata (duplicate shortcut for consistency)
s then o: show/hide open
s then c: show/hide close
s then t: show/hide transaction
s then b: show/hide balance
s then n: show/hide note
s then d: show/hide document
s then p: show/hide pad
s then P: show/hide padding
Charts:
Shift + c: show/hide chart
c: cycle through all the charts available
Caution: This is far from finished. Consider it alpha-software. Contributions are very welcome :-)