A beancount fava extension to add a envelope budgeting capability to fava and beancount. It is developed as an fava plugin and CLI.
Click the repl.it link to be able to see the plugin in action
python -m pip install fava-envelope
Add this to your beancount journal, and start fava as normal
2000-01-01 custom "fava-extension" "fava_envelope" "{}"
You should now see 'Envelope' in your fava window. You must set up a budget (see below), or else Fava will report a 404 error.
start date in the format <4 digit year>-<2 digit month>
2020-01-01 custom "envelope" "start date" "2020-01"
If you want to see future months (to budget ahead), set this parameter
2020-01-01 custom "envelope" "months ahead" "2"
The default is 0
You will need to specify the Assets and Liabilities you want included in your budget (For example ignoring Investment accounts). you can use regular expression in these statements
2020-01-01 custom "envelope" "budget account" "Assets:Checking"
2020-01-01 custom "envelope" "budget account" "Liabilities:Credit-Cards:*"
By default fava-envelope will use the Assets/Liabilities/Income/Expenses buckets that are not listed in the budget accounts. this directive allows you to map them to another bucket
2020-01-01 custom "envelope" "mapping" "Expenses:Food:*" "Expenses:Food"
2020-01-31 custom "envelope" "allocate" "Expenses:Food" 100.00
The envelopes will read the operating currency from the core beancount option.
option "operating_currency" "EUR"
It will default to USD if this option is not set. Only a single currency is supported for the budget.