介绍
欢迎使用 Cdocs —— 一个用 C++ 编写、数据驱动的极简静态文档站点生成器(SSG)。
它把 docs/ 下的 Markdown 源文,连同 .Cdocs/ 里的配置、导航、多语言文案与前端资源,编译成一个纯静态、可离线、零运行时依赖的站点 dist/。
#它解决什么问题
传统文档工具要么依赖 Node/Python 运行时,要么配置分散、改样式要动源码。Cdocs 的设计目标是:
- 单文件 CLI:一个
Cdocs.exe(或Cdocs)搞定「编译 → 生成 → RSS → PWA」,无需安装 Node/Python 即可serve预览。 - 数据驱动:站点标题、导航、主题、多语言全部由 JSON 表达,改文案/结构不动 C++。
- 离线可用:Mermaid / KaTeX / highlight.js / FlexSearch 等第三方库随站发布,断网也能用。
- SEO 友好:构建时落地 JSON-LD、canonical、sitemap
hreflang、各语言搜索索引。
#核心特性
- 命令行:
build/serve/new/version/help子命令 - 内容:Markdown(基于 md4c,支持 GFM 扩展:表格、任务列表、删除线)
- 导航:配置驱动的侧边栏,支持最多 6 层嵌套与分组折叠、移动端抽屉
- 搜索:客户端全文搜索(FlexSearch),标题/正文分域 + 命中高亮
- 主题:明暗双主题,首次跟随系统、记忆偏好
- 增强:代码高亮 / 复制按钮、Admonitions 提示框、
Mermaid流程图、KaTeX 公式 - 体验:⌘K 命令面板、图片灯箱、打印 / 导出 PDF、「本页有帮助吗?」反馈
- 多语言:i18n(
{{key}}+ 扁平 JSON 字典) - 发布:每页 SEO、sitemap、robots、RSS 2.0 / JSON Feed、PWA 离线
#三步上手
# 1) 一键构建(自动编译生成器 → 生成站点 → RSS → PWA)
.Cdocs\tools\build.cmd # Windows
bash .Cdocs/tools/build.sh # Linux / macOS
# 2) 本地预览(内置 C++ 静态服务器,默认 http://localhost:8088)
Cdocs serve
# 3) 新建一个独立站点(复制引擎 + Cdocs.exe + 示例 docs/intro.md)
Cdocs new my-docs
提示:
serve内置一个 C++ 写的 HTTP 服务器,无需安装 Python 或 Node,仅监听本机127.0.0.1;改完docs/重跑即可刷新预览。
#接下来
测试热重载内容