Expense Buddy:本地优先的费用追踪,支持 GitHub 同步

发布: (2026年1月18日 GMT+8 11:37)
5 min read
原文: Dev.to

Source: Dev.to

概览

多年来我尝试了各种记账应用,却总是遇到同样的问题:流程慢、界面杂乱,而且总有一种感觉自己把太多数据交给了它们。于是我自己动手做了一个。

Expense Buddy 是一款以隐私为先、本地优先 的记账工具,使用时几乎不干扰你。它基于 React Native(Expo)构建,默认所有数据都保存在设备本地,并提供可选的 GitHub 同步功能,让你自行掌控备份。

关键特性

  • 默认本地优先 – 数据始终保存在设备上。
  • 设计上私密 – 没有分析、广告或数据出售。
  • 大数据集下依然快速 – 轻量 UI 与虚拟化列表。
  • 可选 GitHub 同步 – 跨设备保持数据同步。
  • 每日记账,支持分类和付款方式标签。
  • 完整历史视图,可编辑过去的记录。
  • 增量、差分、批量提交的 GitHub 同步。
  • 深度分析:分类、付款方式细分、卡片/UPI 级别拆分以及支出趋势图表。
  • 可自定义颜色和图标的分类。
  • 保存的付款工具(卡片和 UPI ID)。
  • 应用内 “更新日志” 提示。
  • 可直接从设置页面报告问题。
  • 支持浅色和深色模式,主题感知样式。

仪表盘

仪表盘充当“每日签到”页面,快速展示近期支出和简洁的 7 天趋势图。图表可点击,直接跳转到对应日期的记账条目。

添加支出

添加支出故意设计得非常简单——单屏流程,快速选择分类和付款方式,让你在几秒钟内完成记账并继续其他事务。

分析

分析标签页展示资金流向:

  • 分类
  • 付款方式
  • 已保存的工具

你还可以查看支出趋势,并在同一页面比较多个时间窗口(例如 “本周” 与 “最近 3 个月”)。

历史

历史视图让你浏览过去的记录,打开任意支出条目并直接在原位修改——无需进入单独的编辑模式或四处寻找。

设置

设置页面刻意保持简洁:

  • 设置默认付款方式。
  • 添加或编辑自定义分类(应用默认提供 8 种分类)。
  • 管理已保存的付款工具,以获得更深入的分析。
  • 启用 GitHub 同步,实现跨设备数据同步。
  • 选择在更改时或应用启动时自动同步。

GitHub 同步(可选)

设计为安全、可预测且完全可选:

  • 每日 CSV 文件 – 支出以 expenses-YYYY-MM-DD.csv 的形式存放在你的仓库中。
  • 先合并工作流 – fetch → merge → push,避免意外的数据丢失。
  • 冲突处理 – 基于时间戳的解决方案;仅在必要时提示真实冲突。
  • 差分上传 – 只上传有变动的文件,批量合并为一次提交。
  • 设置同步 – 分类和已保存的工具可通过 settings.json 同步。

性能

我对卡顿的列表极度敏感,所以性能是首要目标。虚拟化列表、记忆化组件以及轻量状态层确保即使在长历史记录下也能保持流畅。界面保持极简,记一笔支出只需几秒,而不是几分钟。

可用性

  • 使用本应用不需要任何外部账号。
  • GitHub 同步为自愿选项,文件存放在你自己的仓库(每日 CSV)。
  • 不会出售任何数据。

Expense Buddy 目前在 Google Play 进行内部测试。想获取访问权限,请在 X(Twitter)上私信 @sudokaii 或发送邮件。

链接

Back to Blog

相关文章

阅读更多 »