案例
Ledger Reborn:基于 QuickBooks 研究的独立记账实现
维护者报告使用 REA 与 Ghidra 研究 QuickBooks Desktop for Mac 的选定行为,随后独立实现本地记账应用。Python/SQLite 引擎持久保存复式分录、发票、库存和付款;公开合成样例检查有限范围的记账与回滚行为。
- 目标
- 应用
- 类别
- REA 社区调查案例
- 关联
- 作者报告的混合工具流程
- 来源复核于
使用条件与局限
- 前提条件:所审阅版本为 2026.10.12-preview.1。本地浏览器版本需要 Python 3.11+;记账核心使用标准库与 SQLite。原生桌面构建使用 pywebview 6.2.1、PyInstaller 6.22.3 和 Pillow 12.3.0,须在目标操作系统上构建;Windows 还需要另行安装 WebView2 运行时。
- 署名:维护者将 QuickBooks Desktop for Mac 2024 Trial、版本 23.1.13.962 R14 Trial 标为调查目标。REA 6.4.0 配合 Ghidra、NIB 解码及选定运行观察,为库存算法、预算符号、对账路径和布局提供依据。Python/SQLite 引擎与前端为独立编写,并非恢复出的 Intuit 源码。
- 测试证据:公开合成样例包含冻结且独立指定的整数分金额期望值。所审阅测试比较报表,并检查无效分录、账单和库存操作的原子回滚。这些是实现检查。
- 测试证据:单独进行的原软件比较据称使三份官方样例报表逐账户精确到分一致。厂商样例公司与导出文件未在此公开,因此该结果仍为作者报告。
- 局限:预览版仅支持单用户、本地运行和 USD。工资核算、报税、实时银行/付款服务、多币种及完整 QuickBooks 迁移不在实现范围内。其现金制输出是明确定义的管理现金视图。
- 许可:MIT 覆盖项目自编应用;厂商输入与捆绑运行时依赖保留各自条款。预览版在 macOS 上没有 Developer ID 签名或公证,也没有 Windows 发布者签名。打包程序冒烟测试与选定原生窗口观察各有范围。
关于此条目
说明已依据一手来源复核。
一手来源
- docs/CASE_STUDY.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- README.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- ENGINE_README.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- BUILDING.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- requirements-desktop.txt GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- docs/EVIDENCE.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- docs/PUBLICATION_SCOPE.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- docs/BRAND_AND_PROVENANCE.md GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- ledger.py GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- tests/test_acceptance.py GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- fixtures/FROZEN.sha256 GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- fixtures/expected.json GitHub · lxistired/ledger-reborn · 修订 d7f6b8a
- LICENSE GitHub · lxistired/ledger-reborn · 修订 d7f6b8a