Projects
Projects / 项目作品
A collection of what I build and explore. 这里记录我做过的项目、阶段性作品,以及一些从想法到可运行产品的实践。
PocketLedger / 随心记账本
- Type: Vibe Coding Project / Open-source Desktop Tool
- Stack: React, Vite, Electron, local JSON storage
- Role: Product definition, experience direction, review, and iteration
- Description: A local-first accounting tool for students. It focuses on recording daily expense, income, transfer, account balance, monthly allowance, and spending structure without requiring login or cloud sync.
- Statement: This is a vibecoding project. I provided the product goal, usage scenarios, experience judgment, and acceptance direction; Codex helped turn the conversation into a PRD, UI, React + Electron implementation, README, release workflow, and GitHub-ready project.
Key Features
- 支持支出、收入、转账三类交易。
- 支持微信、支付宝、银行卡、现金等账户管理。
- 支持自定义收入 / 支出分类。
- 首页展示本月生活费、已花、剩余、收入、支出、结余。
- 支持账单筛选、搜索、最近交易回看。
- 支持分类统计、账户支出分布、近 6 个月趋势图。
- 支持 JSON / CSV 导出,支持 JSON 导入。
- 支持账户余额校准和校准日志。
- 默认本地保存,不需要注册登录。
Creation Process
这次创作不是先写代码,而是先把一个模糊想法收敛成可执行的产品:
- 先明确定位:不是复杂理财平台,而是一个面向大学生日常生活费管理的安静账本。
- 再写 PRD:确定核心用户、使用场景、数据模型、首页信息优先级、交易类型、账户系统、分类系统和导入导出能力。
- 再做体验取舍:第一版坚持本地优先、单用户、无登录,先把“快速记一笔”和“这个月还剩多少钱”做好。
- 再落到工程:使用 React + Vite 做界面,Electron 做桌面壳,本地 JSON 文件保存数据。
- 最后做开源化:补 README、LICENSE、CI、Release 配置,让它不仅是一个 demo,而是可以继续维护和发布的开源项目。
我把这次项目看成一次 vibe coding 练习:重点不只是“让 AI 写代码”,而是学习如何把需求、判断、体验和验收标准表达清楚,再通过连续反馈把它压成一个真正能运行的工具。
Blog Website
- Type: Personal Project
- Stack: Hexo, Butterfly
- Description: My personal blog for documenting technical learning and growth.
C++ Learning Projects
- Type: Learning Project
- Stack: C++
- Description: Small practice projects and exercises built while learning C++.