受够了记账 App 的广告和会员,我自己写了一个:完全免费、数据 100% 在本地、开源
先说结论:这是一个没有广告、没有会员、没有内购、不需要注册、不联网上传任何数据的记账 App。代码开源在 GitHub,Android 安装包直接从 Release 页下载。
- GitHub:github.com/LumiDesk/ve…
- 下载 APK:github.com/LumiDesk/ve…
为什么要自己造轮子
我原本也是主流记账 App 的用户,但这几年的体验大家应该都有共鸣:
- 打开先看 5 秒开屏广告,记一笔账的功夫广告看了三个;
- 核心功能越来越多地被塞进"会员专享",导出自己的账单都要付费;
- 强制注册手机号,账单数据全在别人的服务器上——消费记录可能是比聊天记录更私密的东西,它能完整还原你的生活轨迹;
- 哪天服务器关了、公司没了,你多年的账本就没了。
记账本质上是个很简单的需求:输入金额、选个分类、存下来、月底看看统计。它不应该需要一个云端账号,更不应该被广告和会员绑架。
所以我写了 Veri Fin——名字来自 Verify + Finance,定位就三个词:完全免费、数据自主、本地优先。
它长什么样、能干什么
记一笔账,3 秒的事
首页右下角点一下,弹出数字键盘,输入金额进详情页,选分类、选账户、保存,完事。支出红色、收入青绿、转账蓝色,一眼分清。
Android 还支持系统下拉快捷开关:通知栏下拉,点"快速记账"磁贴直接进键盘,连 App 都不用先打开。
| 数字键盘 | 记账详情 |
|---|---|
资产管理:你到底有多少钱
支持多账户(现金、储蓄卡、信用卡、支付平台等),输入账户名会自动匹配银行/支付平台图标;支持账户分组、拖动排序、隐藏账户、卡号后四位标记。净资产卡片还能换自定义背景图。
转账在转出和转入账户之间流转,只动余额、不算收支——这点很多 App 都处理得稀烂,转个账月支出就虚高一截。
预算:告诉你还能花多少
设置月度总预算和分类预算,预算页能看到支出进度、剩余额度、剩余日均(今天开始每天还能花多少)、近 6 个月趋势和历史对比。某个分类花到 85% 或者超支了,首页预算卡会直接提醒你。
看板:图表全部可以点
看板聚合了预算执行、分类排行、分类占比环形图、7 天日趋势和月度收支。所有图表都是自绘的,而且全部支持交互——曲线图、柱状图点击或滑动能看到单点数据气泡,环形图点一下分段,中心直接显示该分类的金额和占比。不是那种只能干看的静态装饰图。
其他你可能关心的
- 多账本:不同用途的账完全隔离(比如个人 / 家庭 / 副业);
- 日历视图:按日期看每天的收支,点日期看当天流水;
- 搜索和筛选:关键词能匹配备注、分类、账户、金额,时间范围、排序随便切;
- 深色模式:跟随系统 / 浅色 / 深色三种;
- 自定义分类:新增、重命名、换图标、拖动排序都支持。
数据到底怎么保证是你的
这是我最想讲的部分,也是这个项目存在的理由:
- 不需要注册。没有账号系统,装上就能用。
- 数据只存在你的手机里。Android 用系统持久化存储,杀进程、重启都不丢。App 没有任何把你的账单发到网络上的代码。
- 一键导出 JSON 备份。设置页导出完整备份到系统下载目录,换手机时导入即可。格式是明文 JSON,不绑定任何私有格式,哪天你不想用了,数据拿走就能走。
- 开源,GPL-3.0 协议。所有代码公开可审计,而且这个协议保证了任何基于它的衍生版本也必须开源——它永远不会变成一个闭源收费软件。
代价也说清楚:目前没有云同步。这是刻意的取舍,本地优先是原则,未来如果做同步也不会是强制注册的那种。
技术实现
技术栈是 Flutter,一套代码跑 Android 和 Web。
- 状态管理没有用任何三方库:全部状态收敛在一个
ChangeNotifierController 里,用InheritedNotifier注入组件树。对这个规模的单人项目来说,Provider/Riverpod/Bloc 都是不必要的复杂度。 - 平台差异用条件导入解决:本地存储、图片选择、文件导出都是
stub + dart.library.html + dart.library.io三件套,Web 走 localStorage,移动端走 SharedPreferences,测试环境走内存 stub。 - 图表全部手绘:没用 fl_chart 之类的库,
CustomPainter自绘曲线图、柱状图、环形图,命中测试和数据气泡也是手写的,序列/坐标轴计算抽成了纯函数方便测试。 - CI/CD:GitHub Actions 在打 tag 时自动 analyze → test → build → 签名 APK → 发 Release,App 内置了基于 GitHub Release API 的更新检查和下载。
最后
这个项目我会长期维护,因为我自己每天都在用。如果你也受够了"记个账还要看广告买会员",欢迎试试:
- GitHub(顺手点个 Star 就是最大的支持):github.com/LumiDesk/ve…
- 下载 Android APK:github.com/LumiDesk/ve…
有 Bug 或者功能建议,直接提 Issue,我都会看。