总体架构
工作区由唯一的代码子项目 clis/docdoc 构成,构建产物是一个自包含的 Node CLI:同一份 dist/index.js 既是命令行客户端,也是 docdoc serve 服务器进程。
组件职责
| 组件 | 职责 |
|---|---|
| CLI 命令 | 构建、预览、站点注册与删除、systemd 生命周期管理 |
| serve 进程 | 多站点托管:静态内容、目录树与全文搜索查询、管理 API、ACME/TLS |
| 构建管线 | Markdown → HTML 的纯函数转换,产物自包含 |
| 注册表 | DataDir/registry.json,站点的唯一持久化状态 |
零外部组件
服务器进程的全部状态为:站点产物目录、注册表 JSON 文件、TLS 证书文件。不依赖外部数据库、消息中间件、缓存服务;站点路由表缓存在进程内存,重启后从注册表文件加载。
工作区布局
| 目录 | 内容 |
|---|---|
clis/docdoc |
唯一代码子项目(CLI + Server) |
docs/api_references |
API 参考文档站 |
docs/developer_handbook |
本开发手册 |
docs/user_manual、docs/openapi |
外部文档站 |
