立项原因:传统个人记账工具往往重“流水记录”而轻“深度分析”,用户难以从繁杂的账单中洞察消费习惯,导致“记账流于形式、数据无法反哺生活”。本项目旨在解决个人财务数据难沉淀、难下钻、难分析的产品痛点。
行业场景与业务背景:面向个人财务管理与生活消费记录场景。在业务背景上,市面多数产品要么臃肿复杂,要么无法灵活自定义消费维度。SpendLog-Analytics 采用轻量级 PWA 架构与本地化 SQLite 存储,保障用户数据隐私;同时依托星型数据模型与「场景-子项」分类体系,提供多维聚合报表与下钻筛选能力,帮助用户真正实现“钱去哪了”的精细化洞察。
SpendLog-Analytics 是一款分析型记账 PWA,核心功能模块包括:
记账模块:采用「场景 → 子项 →(三级商家)」分类体系,支持长按/右键删除、拖拽排序;消费场景与渠道可新建,支出/收入金额切换,记录联动渠道余额自动更新。
多维报表模块:提供收入/支出/结余概览,以及场景、消费场景、渠道、消费分布、预算执行等多个分析视图;「钱去哪了」报表支持下钻到叶子级分类。
筛选与下钻模块:可折叠筛选面板支持同一维度多值复选,选中项以颜色高亮;下钻到叶子场景时逐条列出具体消费条目,点击即可定位到记录明细的对应行。
在线编辑模块:记录明细中可直接修改日期、时间、金额、分类、消费场景、渠道、备注,并自动联动渠道余额。
数据能力模块:支持 Excel 导入/导出(含分类全路径)、预算设置、渠道余额校准、多用户独立 SQLite 库。
PWA 能力:离线可用,支持滚动安装到手机/桌面。
“我”负责的任务:独立完成了从需求分析、数据模型设计、前后端开发到 Docker 部署的全流程。
技术栈与架构:
后端使用 Python 标准库 http.server + sqlite3 搭建 RESTful API,零第三方依赖,降低部署复杂度。
数据层采用星型模型组织,账户库与用户业务库分离,每个用户拥有独立的 SQLite 业务库,保证数据隔离。
前端为原生 HTML/CSS/JavaScript 实现,集成 Service Worker 与 manifest 实现 PWA 离线能力。
部署层提供 Docker Compose 一键启动方案,数据卷持久化。
实现亮点与难点:
亮点:以“星型模型 + 多维下钻”重塑记账数据组织方式,筛选面板支持多值复选与颜色提示,下钻到叶子后可直接定位到明细行,形成“总览 → 钻取 → 定位 → 编辑”的完整分析闭环。支持多账号登录
难点:无第三方框架下实现完整的用户会话管理、分类树动态增删校验(被引用或子项未删则拒绝删除)、以及记账联动渠道余额的实时一致性,全部基于 Python 标准库自主实现。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论