很多人都会记账。
但我一直觉得,大多数记账软件都有一个问题:
“它们越来越不像自己的东西。”
有些太依赖云端,
有些订阅越来越重,
有些功能越来越复杂,
有些甚至连数据导出都不够自由。
于是,我开始慢慢折腾自己的个人财务系统:
personal_ledger
最开始,它只是一个普通 Django 项目。
能记账,
能看流水,
能管理信用卡。
仅此而已。
但后来我发现:
真正困难的,从来不是“功能”。
而是:
- 数据是否长期可控
- 是否方便迁移
- 是否能离线运行
- 是否能自己部署
- 是否能长期维护
于是,这个项目开始逐渐变化。
从“能用”到“可部署”
最近一段时间,我开始认真整理整个项目结构。
目前已经完成:
- Docker 镜像化
- 离线安装包
- Django migration 规范化
- 虚拟环境隔离
- 自动部署脚本
- 数据迁移检查
- compose 部署方案
也就是说:
这个项目已经不只是“本地代码”。
它开始真正具备:
可交付、可迁移、可长期运行
的能力。
这一点其实很重要。
因为很多个人项目最后都会死在:
“只有作者自己机器能跑。”
我为什么准备重做前端
虽然现在后端已经比较稳定,
但我越来越明显感觉到:
传统 Django Template 的体验,已经跟不上现在的软件交互方式。
很多操作依然像:
- 后台管理系统
- 表格 + 表单
- 页面刷新
- 菜单式操作
而现在主流产品已经变成:
- 卡片化
- 实时交互
- 无刷新体验
- 手机优先
- 类 App 操作
所以,我决定:
保留 Django 后端
前端逐步 Vue3 化
目前规划:
- Django REST Framework 提供 API
- Vue3 + Vite 重构前端
- Tailwind CSS 做响应式布局
- 后续预留 Tauri 桌面端
这样最大的好处是:
数据库结构基本不用推倒重来。
业务逻辑依然保留在 Django。
真正变化的,是:
用户体验层
我想做的,不只是“记账软件”
后来我慢慢发现:
我真正想做的,其实不是:
又一个记账 App。
而是:
一个真正属于自己的“个人财务 OS”
它应该:
- 本地优先
- 数据自主
- 支持 Docker
- 支持 NAS
- 支持家庭实验室
- 可以离线运行
- 不依赖第三方云
这和现在很多 SaaS 产品,其实是完全不同的方向。
但我越来越喜欢这种:
“系统掌握在自己手里”
的感觉。
技术之外
有时候我会发现:
我折腾服务器,
和我养盆景,
其实是同一种事情。
都需要:
- 长期维护
- 慢慢调整
- 观察变化
- 控制节奏
技术和园艺看起来很远,
但它们都让我感觉:
我正在亲手维护某种长期存在的东西。
这也是我一直喜欢自托管和个人项目的原因。
后面准备做什么
接下来,我准备优先完成:
- Vue3 新前端
- 手机 Web 适配
- 快速记账交互
- 信用卡账单中心
- PWA 支持
- 局域网家庭部署体验
如果顺利的话,
后面可能还会继续尝试:
- Tauri 桌面端
- AI 辅助分类
- 自动账单分析
- 多设备同步
这个项目可能永远不会成为“大产品”。
但它会越来越像:





