用了三年 Beancount ,从 MoneyWiz 转过来的。 有一说一,Beancount 记账是爽,但 Fava 自带的预算展示真的是……一言难尽。
最受不了两点:
找了一圈没得趁手的,干脆自己动手。
最近 Vibe Coding 把这个 fava_budget_freedom 给搓出来了。
主要就为了解决这几个痒点
rollover 开关,上个月没花完的额度,自动累积到这个月。beancount_periodic.amortize 做大额折旧摊销,这插件能自动识别,不会把分期生成的条目算进预算里,而是将一次性开支算进去,避免产生没怎么花钱的幻觉。
用法很简单,继续使用 fava 的 预算语法,扩展了一些:
; 1. 开启插件
2025-01-01 custom "fava-extension" "fava_budget_freedom"
; 2. 定义预算(支持通配符 *,这比原生的好用)
; 比如:每月吃的预算 2000 ,开启滚存(攒下的钱下月接着吃)
2025-01-01 custom "budget" "Expenses:Food:*" "monthly" "2000 USD" "rollover"
; 比如:房租(配合 amortize 插件用,自动处理分期逻辑,不重复统计)
2025-01-01 custom "budget" "Expenses:Home:Rent" "yearly" "12000 USD"
项目地址: https://github.com/Leon2xiaowu/fava_budget_freedom
代码属于 Vibe Coding 产物,主打一个能跑就行,功能反正我是用爽了。 各位 Beancount 道友如果也有预算焦虑,可以试一下。有 bug 欢迎提,或者直接 PR 帮我修修车。🙈