How huafanfan/cookbook works
这是一个局域网菜谱应用:用户搜索或筛选菜谱、查看详情并照步骤烹饪;也可编辑菜谱、查看修改历史,以及共享点赞、收藏和厨具状态。前端通过 API 访问 Fastify 服务;菜谱与修改历史以文件保存,图片经扫描后提供。另有 HowToCook 导入与同步能力。图中调用关系依据已采样源码及 README 明确说明;未采样的页面和路由内部连线从略。
Main entry points: api.ts 浏览器 API 客户端 · index.ts Fastify 应用组装 · App.tsx 前端应用 · recipes.ts 菜谱 API
Components 22
浏览与烹饪
菜谱服务
文件数据
来源导入
- 菜谱导入
scripts/import-howtocook.ts - 来源同步
scripts/sync-howtocook.ts - Markdown 解析
src/server/lib/howtocook-parse.ts - 同步合并
scripts/lib/sync-merge.ts
Other components
- 家庭用户
- HowToCook 内容源
Connections 32
- 家庭用户 → 前端应用: 使用
- 前端应用 → 搜索与筛选: 呈现
- 前端应用 → 菜谱详情与烹饪: 呈现
- 前端应用 → 编辑菜谱: 呈现
- 前端应用 → 修改历史: 呈现
- 搜索与筛选 → 浏览器 API 客户端: 请求列表
- 菜谱详情与烹饪 → 浏览器 API 客户端: 请求详情
- 编辑菜谱 → 浏览器 API 客户端: 读取并保存
- 修改历史 → 浏览器 API 客户端: 请求历史
- 编辑菜谱 → 浏览器偏好与草稿: 读写草稿
- 菜谱详情与烹饪 → 浏览器偏好与草稿: 读写偏好
- 浏览器 API 客户端 → 菜谱 API: HTTP 请求
- 浏览器 API 客户端 → 用户状态 API: HTTP 请求
- Fastify 应用组装 → 菜谱仓库: 加载仓库
- Fastify 应用组装 → 共享用户状态: 加载状态
- Fastify 应用组装 → 菜谱 API: 注册路由
- Fastify 应用组装 → 用户状态 API: 注册路由
- Fastify 应用组装 → 图片服务: 注册路由
- 菜谱 API → 菜谱仓库: 读取与保存
- 菜谱 API → 搜索与摘要: 搜索菜谱
- 菜谱 API → 共享用户状态: 读取状态
- 用户状态 API → 共享用户状态: 读写状态
- 图片服务 → 菜谱仓库: 读取图片白名单
- 菜谱仓库 → 菜谱与图片文件: 读取菜谱与图片
- 菜谱仓库 → 修改历史文件: 读写历史
- 共享用户状态 → 菜谱与图片文件
- HowToCook 内容源 → 菜谱导入: 提供内容
- 菜谱导入 → Markdown 解析: 解析菜谱
- 来源同步 → Markdown 解析: 解析菜谱
- 来源同步 → 同步合并: 合并变更
- 菜谱导入 → 菜谱与图片文件: 写入导入菜谱
- 来源同步 → 菜谱与图片文件: 同步菜谱