d94d4e1ed5ea8bda0718c6b1346068499dff2574
同步近期 ledgerly 功能与配置变更到文档站:新增收支记录页「AI 生成规则」入口的用户与开发说明、补充新接口与规则应用逻辑、修正 CORS/反向代理与运行环境编码说明,并更新邮箱检查进度时间戳描述。 变更内容: - guide/transactions.md 批量操作区新增「AI 生成规则」按钮与「AI 生成规则(从勾选账单)」小节(含「同时应用到勾选账单」),引用新截图。 - guide/ai.md、guide/rules.md、guide/pages.md 补充两处生成入口与「同时应用」说明。 - dev/api.md 新增 POST /api/ai/rule/apply-transactions;dev/rule-engine.md、dev/ai.md 补充 applyToTransactions 与两个生成入口。 - dev/build-deploy.md 将 CORS 更新为放开全部来源并信任反向代理转发头,新增运行环境 UTF-8 locale 说明。 - guide/email-bills.md 补充「立即检查」进度每行带 HH:mm:ss 时间戳。 - scripts/ts/capture-elements.ts 新增 captureAiRuleFromTransactions 截图场景(交易页 AI 生成规则弹窗)。 说明: - 新截图 elements/ai-rule-transactions.png 已上传 OSS,正文以 OSS 长期地址引用。
汇账 · 文档站
本目录是「汇账」(同级目录 ../ledgerly)的使用文档与开发文档站点,基于 VitePress 构建,并附带一套 Node/TypeScript 维护脚本(截图、演示数据、资料抓取)。
在线体验:https://finance.rosercode.cn/(演示账号
demo/demo123456,使用独立的 SQLite 演示库与虚构数据)
快速开始
# 安装依赖(走本地 verdaccio 私服,见 .npmrc)
npm install
# 本地开发(默认 http://localhost:5175)
npm run docs:dev
# 构建静态站点到 .vitepress/dist
npm run docs:build
# 预览构建产物
npm run docs:preview
对外访问(局域网/远程):
./node_modules/.bin/vitepress dev --host 0.0.0.0
文档结构
站点分为两大板块:
- 使用文档(
guide/):面向使用者,讲「怎么用」。- 开始使用、记账与整理、智能与自动化、系统
guide/bills/:各类账单的获取与字段说明guide/faq.md:常见问题
- 开发文档(
dev/):面向开发者,讲「怎么跑、怎么设计、怎么改」。- 整体架构、数据模型、账单解析、规则引擎、AI 集成、定时通知、动态数据源
- 项目结构、构建与部署、开发环境与规范、账单字段说明、API 文档
首页 index.md 提供两个板块的入口。
目录结构
doc-site/
├── index.md # 首页
├── guide/ # 使用文档(含 bills/)
├── dev/ # 开发文档
├── public/ # 静态资源
│ ├── logo.svg
│ └── screenshots/ # 文档配图(整页 + elements/ 关键元素)
├── .vitepress/
│ ├── config.mts # 站点配置(导航、侧边栏、搜索、端口 5175)
│ └── theme/ # 自定义主题(图片全屏查看、图片样式)
├── scripts/
│ ├── ts/ # 维护脚本(TypeScript,含截图、演示数据、OSS 上传)
│ └── samples/ # 虚构样例账单
├── refs/ # 联网检索到的资料原文(不参与构建)
├── jar-home/ # jar 一体化实例运行目录(测试库副本)
├── .env.local # 截图 OSS 上传等本地配置(不入库)
├── package.json
└── tsconfig.json
维护脚本
脚本位于 scripts/ts/,用 tsx 直接运行 TypeScript,浏览器自动化基于 playwright-core(Chromium),HTTP 基于 axios。
npm run capture # 一键重新截图(整页 + 元素 + 卡片 + 编辑/设置面板 + 解析预览,慎用)
npm run capture:pages # 仅整页截图
npm run capture:elements # 仅元素截图
npm run make:bills # 生成虚构样例账单
npm run seed # 导入样例账单(演示数据)
npm run seed:rules # 补充标签与规则
npm run refs:search # 检索资料到 refs/
npm run refs:fetch # 抓取指定 URL 到 refs/
npm run oss:upload # 上传截图到 OSS(读取 .env.local)
npm run test:browser # 验证浏览器链路
npm run typecheck:scripts # 类型检查
运行截图前请确保:
- 应用实例已启动(默认访问
jar-home/下的 jar 实例localhost:18082); - 测试库中已配置 AI(用于截取启用 AI 后的界面)。
可通过环境变量覆盖:LEDGERLY_WEB、LEDGERLY_API、LEDGERLY_USER、LEDGERLY_PASSWORD。
环境安全:截图与演示数据只操作测试环境,禁止访问真实环境(5173 / 8080 / MySQL 真实库)。
环境要求
- Node.js(建议 20+,本项目使用 v24)
- npm 依赖走本地 verdaccio 私服(
.npmrc已配置registry=http://localhost:4873/) - 浏览器:复用 Playwright 缓存的 Chromium,无需系统安装 Chrome/Firefox
约定
维护本目录时请遵守 AGENTS.md(文档归类、截图规范、构建校验等)。
Languages
TypeScript
98.8%
CSS
1.2%