V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
shuaixiaoxiao
V2EX  ›  分享创造

做了个开源记账 App,支持自建 Supabase/WebDAV 同步

  •  3
     
  •   shuaixiaoxiao ·
    TNT-Likely · 42 天前 · 4307 次点击
    这是一个创建于 42 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用了 10 年某记账 App ,越来越多广告和付费功能,索性自己做了个替代品。

    核心特性

    • 数据自主:支持自建 Supabase 或 WebDAV 服务器
    • 离线优先:本地 SQLite ,无网也能用
    • 完全开源:MIT License ,代码全公开
    • 无广告无追踪:零数据收集

    技术栈

    • Framework: Flutter 3.27
    • 状态管理: Riverpod
    • 数据库: Drift (SQLite ORM)
    • 云同步: Supabase / WebDAV
    • 支持平台: Android / iOS

    功能

    • 多账本管理
    • 分类统计和图表
    • CSV 导入导出
    • 自建云同步( Supabase/WebDAV )
    • 8 种语言支持

    为什么做这个?

    主要是想要一个纯粹的记账工具:

    • 不被广告打扰
    • 数据不被第三方控制
    • 不担心 App 突然跑路
    • 功能简单够用就行

    链接

    目前已经全家在用( 4 人),运行稳定。

    欢迎试用和提意见,感谢 🙏

    第 1 条附言  ·  41 天前

    🎉 v1.5.3 更新发布

    感谢大家的关注和反馈!刚刚发布了新版本,主要更新:

    支持支付宝/微信账单导入

    • 新增账单类型选择器(通用CSV/支付宝/微信)
    • 支持 XLSX 格式导入(微信账单)
    • 智能表头检测,自动识别字段映射
    • 新增日语、韩语界面翻译

    📥 下载地址:https://github.com/TNT-Likely/BeeCount/releases/latest

    感谢 @*桥 成为第一位捐赠者(¥12),iOS TestFlight 众筹进度 1.67%

    有任何问题欢迎反馈!

    第 2 条附言  ·  41 天前

    🎉 重大公告:筹款目标达成!iOS 版本即将到来

    📢 好消息

    非常激动地向大家宣布:蜜蜂记账的 iOS TestFlight 筹款目标已经达成!

    💰 筹款情况

    • 🎯 目标: $99(约 ¥720,Apple 开发者账号年费)
    • 💰 已筹集: ¥732(约 $101)
    • 📈 进度: 101.67% ✅

    感谢所有支持者的慷慨捐赠!

    🙏 特别感谢

    • *桥 - ¥12 - 2025-10-27
    • *睿 - ¥720 - 2025-10-27 🎉

    特别感谢 *睿 的大额捐赠,让我能够立即启动 iOS 版本的开发和发布!

    第 3 条附言  ·  38 天前

    🎉 重大更新 - iOS TestFlight 公测现已上线!

    感谢各位 V 友的关注和支持!

    ✅ TestFlight 公测地址

    立即加入: https://testflight.apple.com/join/Eaw2rWxa

    📱 安装步骤

    1. 在 iPhone/iPad 上安装 TestFlight
    2. 点击上方链接加入测试
    3. 在 TestFlight 中安装蜜蜂记账

    🚀 即将上线 App Store

    当前 TestFlight 版本运行稳定,正在准备提交 App Store 审核。

    预计时间线:

    • 本周内提交 App Store 审核
    • 审核通过后将正式上架(预计 1-2 周)

    💡 为什么选择 TestFlight?

    • ⚡️ 抢先体验最新功能
    • 🐛 帮助我们发现和修复问题
    • 🎁 成为早期用户,见证产品成长

    🙏 最后的呼吁

    这是本帖的最后一次 append,如果你对蜜蜂记账感兴趣,现在是最好的体验时机!

    正式上架后,欢迎大家在 App Store 留下宝贵评价 ⭐️


    项目地址: https://github.com/TNT-Likely/BeeCount 功能特色: 本地优先 | 云同步可选 | 完全开源 | 隐私安全

    64 条回复    2025-10-29 11:44:13 +08:00
    xinru
        1
    xinru  
       42 天前 via iPhone
    支付宝等账单导入不了?
    yidinghe
        2
    yidinghe  
       42 天前 via Android
    @xinru 支付宝账单怎么导出?
    xinru
        3
    xinru  
       42 天前 via iPhone
    @yidinghe 账单-右上角三点-开具交易流水
    shuaixiaoxiao
        4
    shuaixiaoxiao  
    OP
       42 天前
    @xinru 我加一下
    xinru
        5
    xinru  
       42 天前 via iPhone
    @shuaixiaoxiao 支付宝,微信这些常用的支付工具账单导入适配一下。导入账单方便一些
    shuaixiaoxiao
        6
    shuaixiaoxiao  
    OP
       42 天前
    @xinru 好主意
    brsyrockss
        7
    brsyrockss  
       42 天前
    NB 手动点个赞
    cheese
        8
    cheese  
       41 天前
    考虑下添加自动记账吗?现在在用一木,自动记账确实方便
    sutking
        9
    sutking  
       41 天前 via iPhone
    前几天看到这个感觉挺棒的: https://github.com/glink25/Cent
    直接在浏览器里交互,完全没有跨平台的麻烦,数据库直接放在 GitHub 里,几乎完美的安全,再用上 pwa ,感觉非常理想了。
    FeranyDev
        10
    FeranyDev  
       41 天前
    可以考虑加一个 ai 识图,将支付成功的截图分享到这个软件里面,可以自动识别金额、商家和消费类型以及消费时间、地点什么的
    runningman
        11
    runningman  
       41 天前
    挺好的,已 clone
    pangdundun996
        12
    pangdundun996  
       41 天前
    感谢分享,一直想做个类似的 app
    Ziuc
        13
    Ziuc  
       41 天前
    感谢分享,学习了一下,看起来项目里没有针对 WebDAV 场景下跨设备同步时的并发修改与删除问题?
    ( WebDAV 同步状态下,在一台设备上执行删除后,将删除操作传播给其他触发同步的设备)
    shuaixiaoxiao
        14
    shuaixiaoxiao  
    OP
       41 天前
    @brsyrockss 感谢支持!🙏
    shuaixiaoxiao
        15
    shuaixiaoxiao  
    OP
       41 天前
    @runningman 感谢 clone !如果有任何问题或建议,欢迎提 Issue 或 PR 。
    shuaixiaoxiao
        16
    shuaixiaoxiao  
    OP
       41 天前
    @pangdundun996 欢迎参考!代码完全开源( MIT ),可以随意使用和修改。
    shuaixiaoxiao
        17
    shuaixiaoxiao  
    OP
       41 天前
    @sutking Cent 这个思路确实很赞!直接用浏览器 + GitHub 存储,很聪明。

    不过我还是选择了原生 APP ,主要是:
    - 离线体验更好,本地 SQLite 没网也能用
    - 性能会好一点,数据多了也不卡
    - 能做桌面小组件、通知这些

    其实各有优势,看个人需求。Cent 适合喜欢 Web 的,蜜蜂记账适合要原生的。

    都挺好,不冲突 👍
    shuaixiaoxiao
        18
    shuaixiaoxiao  
    OP
       41 天前
    @FeranyDev 这个建议很好!识别截图自动记账确实能省很多事。

    技术上没问题,OCR + AI 提取信息,但有几个头疼的地方:

    1. 调 AI API 要钱(虽然不贵,但开源免费项目不太好搞)
    2. 本地跑 AI 模型,APP 会大几十 MB
    3. 隐私问题 - 用第三方 API 的话数据又出去了

    可能的办法是让用户自己申请 API key ,比如阿里云 OCR 、百度 OCR 这些,有免费额度。或者做成可选功能?

    我加到 TODO 里,看看有没有更好的方案。感谢建议!
    shuaixiaoxiao
        19
    shuaixiaoxiao  
    OP
       41 天前
    @cheese 我下载了一木看了下,原理大概是挂一个悬浮窗识别截图,这里我记个 todo 吧,主要是考虑两点:
    1.隐私问题
    2.OCR 成本问题
    shuaixiaoxiao
        20
    shuaixiaoxiao  
    OP
       41 天前
    @Ziuc 理解,有点类似于协同编辑?这个功能目前确实没有,我先记个 todo 研究下。
    thedog
        21
    thedog  
       41 天前
    ios 国区好像没搜到,是还没上架吗?
    shuaixiaoxiao
        22
    shuaixiaoxiao  
    OP
       41 天前
    @thedog 目前还没上架 App Store ,主要是需要 Apple 开发者账号($99/年)。

    现在有两个方案:

    **方案 1:自签名**(免费,稍微麻烦)
    - 用 Xcode 自己编译签名
    - 需要 Mac 电脑
    - 每 7 天需要重新签一次(免费账号限制)

    **方案 2:等 TestFlight**(推荐)
    - 正在众筹开发者账号费用
    - 目前进度 1.67%(¥12/$99 )
    - 达到目标后会立即上架 TestFlight

    如果你急着用,可以试试方案 1 。我可以提供详细的自签教程。

    或者如果方便的话,也欢迎支持一下众筹,早日让所有 iOS 用户都能用上 😄
    rcg1997
        23
    rcg1997  
       41 天前
    自动识别这个功能,我用过一段时间现成的快捷指令,是苹果自带的屏幕识别,设定双击背板运行此快捷指令就可以自动识别付款界面,然后把结果填写到表格中,不涉及到在线 OCR 的 api 数量问题, 你看这个思路能有帮助吗?
    ldlywt
        24
    ldlywt  
       41 天前 via Android
    很不错,就是图标不咋好看,建议换个简洁点的🥹
    Librola
        25
    Librola  
       41 天前
    @shuaixiaoxiao #18 我觉得让用户自己配置 API 是很好的方案。另外我看安卓端有一些基于无障碍功能的自动记账方案是非 AI 的,单纯的针对特定界面进行关键词匹配,我觉得也可以作为一个备选方案,缺点就是可能 app 改了界面就得重新适配。
    runningman
        26
    runningman  
       41 天前
    @shuaixiaoxiao 不知道是不是版本问题,flutter 版本比较新,但是编译打包的时候,总提示 plugin loader 相关的插件找不到
    tysb777
        27
    tysb777  
       41 天前
    能不能导入京东 淘宝的账单
    yaoliyc
        28
    yaoliyc  
       41 天前
    @shuaixiaoxiao #22 我用 altstore 安装 beecount-1.5.2-unsigned.ipa
    没成功 报什么参数错误 也不知道怎么回事。
    shuaixiaoxiao
        29
    shuaixiaoxiao  
    OP
       41 天前
    @rcg1997 是个好的思路,我记下 todo 尝试下看看。
    shuaixiaoxiao
        30
    shuaixiaoxiao  
    OP
       41 天前
    @ldlywt 我试试看,或者看能不能摇个专业的设计师参与进来重新设计下。
    shuaixiaoxiao
        31
    shuaixiaoxiao  
    OP
       41 天前
    @runningman 我用的是 3.27.3 ,可以试试看,如果不行可以私我下报错看看。
    shuaixiaoxiao
        32
    shuaixiaoxiao  
    OP
       41 天前
    @tysb777 还没支持,我加一下,应该就是和支付宝呢微信类似,适配下导出文件的格式即可。
    shuaixiaoxiao
        33
    shuaixiaoxiao  
    OP
       41 天前
    @yaoliyc 没安装成功?我之前使用某思助手安装的,但是要先签名才可以安装。
    shuaixiaoxiao
        34
    shuaixiaoxiao  
    OP
       41 天前
    @Librola 大致实现思路是这样子的,我调研一下哪个 ocr 准确点,不行的话就是适配常用支付软件的一些截图做纯文字识别。
    runningman
        35
    runningman  
       41 天前
    @shuaixiaoxiao 我是升级到了最新的
    * What went wrong:
    An exception occurred applying plugin request [id: 'dev.flutter.flutter-plugin-loader', version: '1.0.0']
    > Could not find implementation class 'com.flutter.gradle.FlutterAppPluginLoaderPlugin' for plugin 'dev.flutter.flutter-plugin-loader' specified in jar:file:/Users/abc/.gradle/caches/jars-9/o_04e218ae1edf2416b8380193ef85b73c/gradle-1.0.0.jar!/META-INF/gradle-plugins/dev.flutter.flutter-plugin-loader.properties.
    shuaixiaoxiao
        36
    shuaixiaoxiao  
    OP
       41 天前
    @runningman grade 安装的不对 这个 ai 搜下解决办法就好了
    runningman
        37
    runningman  
       40 天前
    @shuaixiaoxiao 但是我其他 flutter 工程都运行好着,挺奇怪,
    jassssper
        38
    jassssper  
       40 天前
    一直不理解为什么记账需要手动去记,导出、标记,不嫌麻烦吗
    keepfun
        39
    keepfun  
       40 天前
    好用 刚把 [钱迹] 的导入了 使用一段时间看看。
    shuaixiaoxiao
        40
    shuaixiaoxiao  
    OP
       40 天前
    @runningman grade 是每个项目单独要配的,你把 grade 缓存清理下重新安装就好了。另外 flutter 版本对齐下 3.27.3
    shuaixiaoxiao
        41
    shuaixiaoxiao  
    OP
       40 天前
    @jassssper 不麻烦啊 用了十年了
    shuaixiaoxiao
        42
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 感谢支持🙏 有问题和建议随时 github 或这里提出
    keepfun
        43
    keepfun  
       40 天前
    这个登录 开始能登录 然后我配置了下 supabase 测试可以通。
    然后让我重新登录,就登录不上了。我理解有三个密码,试了都不行。

    1 最开始注册这个蜜蜂记账的
    2 注册 supabase 的
    3 注册 supabase 然后创建的项目的

    应该用哪个登录啊?
    shuaixiaoxiao
        44
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 重新注册下,默认的是我配置的默认的 supabase 服务器。你配置了自己的 supabase 之后,就相当于换了个服务器。
    keepfun
        45
    keepfun  
       40 天前
    @shuaixiaoxiao #44
    现在可以登录了(发送的邮件域名是 localhost 的)

    不过 [上传] 报错,说 bucket not found 。是要自己创建么?命名有啥要求么
    keepfun
        46
    keepfun  
       40 天前
    @keepfun 我知道了 看到 github 的文档了。多谢楼主无私贡献。
    shuaixiaoxiao
        47
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun ♥️
    runningman
        48
    runningman  
       40 天前
    @shuaixiaoxiao 我看项目里面 gradle 是 8.3 ,flutter 版本不能用最新吗,那这还得下载一下 3.27 了
    shuaixiaoxiao
        49
    shuaixiaoxiao  
    OP
       40 天前
    @runningman 你这个报错主要是 gradle 问题 flutter 版本最新的应该也可以
    runningman
        50
    runningman  
       40 天前
    @runningman 不行弄个群吧,或者我加你微信,
    runningman
        51
    runningman  
       40 天前
    @shuaixiaoxiao 那我升级一下 gradle ,我其他项目是 8.10 ,我看这个里面是 8.3
    nifan
        52
    nifan  
       40 天前
    试用了一下,遇到一个不方便的地方,从微信导入以后,我搜索房东,出来很多条,我想把这个笔房租记入住房,但不可以批量更改,只可以一笔一笔改,太麻烦了。
    keepfun
        53
    keepfun  
       40 天前
    发现个问题 登录之后 很容易变成退出登录状态。
    shuaixiaoxiao
        54
    shuaixiaoxiao  
    OP
       40 天前
    @nifan 有的兄弟 有个迁移功能
    shuaixiaoxiao
        55
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 这个我倒没遇到过,可能是你的网络和 supabase 服务器连接不稳定
    shuaixiaoxiao
        56
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 这里要判断是真掉了还是假掉了,假掉了大概率是网络连接不稳定,真掉了看下 supabase 的相关设置是不是吧登录有效期设置太短了
    keepfun
        57
    keepfun  
       40 天前
    @shuaixiaoxiao #56 supabase 找了下 没找到相关的设置。

    那针对这个 提一个优化建议 保存账号密码 反正数据在本地,这样就算登录,也就是点击一下子的事情。
    shuaixiaoxiao
        58
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 你先判断下是真掉了还是假掉了
    shuaixiaoxiao
        59
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 不能这么简单判断 账号密码不对的话执行同步就报错了
    shuaixiaoxiao
        60
    shuaixiaoxiao  
    OP
       40 天前
    可以 不行你私我下给你 v
    shuaixiaoxiao
        61
    shuaixiaoxiao  
    OP
       40 天前
    @keepfun 你去 github 开个 issue 贴一下你的视频 我看看
    keepfun
        62
    keepfun  
       40 天前
    @shuaixiaoxiao 没找到你微信 只找到你的电报 电报上给了我的微信。
    shuaixiaoxiao
        63
    shuaixiaoxiao  
    OP
       40 天前
    ramcasky
        64
    ramcasky  
       39 天前
    安利一下一直在用的小星记账
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   817 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 22:10 · PVG 06:10 · LAX 14:10 · JFK 17:10
    ♥ Do have faith in what you're doing.