GitBook vs Livemark
更新于 2026年11月12日
GitBook 是一个商业化的托管文档平台。编写在基于浏览器的块编辑器中进行(类似 Notion),内容存放在 GitBook 的数据库中,发布到 GitBook 托管的站点,域名位于 gitbook.io 之下或使用自定义域名。Git Sync 功能可以把该数据库以 Markdown 形式与 GitHub/GitLab 仓库双向镜像,但唯一可信来源是 GitBook 本身,而不是仓库。
较早的开源静态生成器 gitbook-cli 已于 2018 年弃用,与如今的产品无关;本页介绍的是当前的托管平台。
概览
| 维度 | Livemark | GitBook |
|---|---|---|
| 语言 / 运行时 | TypeScript / Node 24+ | 托管 SaaS(无本地运行时) |
| UI 框架 | React 19 | 专有(由 GitBook 渲染) |
| 构建工具 | Vite + TanStack Start | 无(用户侧无需构建) |
| 内容格式 | Markdown + MDX | 编辑器中的块模型;通过 Git 时为 GitBook 风格的 Markdown |
| 许可证 | MIT,自托管 | 专有;免费版 + 付费方案;仅 Enterprise 支持自托管 |
| 输出模型 | 预渲染静态页面(支持 SSR) | 托管在 GitBook 基础设施上 |
架构
Livemark 基于 Vite、TanStack Start 和 React 构建。编写遵循 JS/TS 的惯例(livemark.config.ts、可通过 npm 安装的插件、用 React 编写的 MDX 组件),页面在构建时预渲染为静态 HTML。
GitBook 是一个多租户 SaaS。内容在基于块的所见即所得编辑器中编写:每个段落、标题、代码块、提示或嵌入内容都是一个带类型的块,存储在 GitBook 的数据库中。运行时是 GitBook 自己的:用户既不需要运行构建步骤,也没有需要部署的静态站点。托管、搜索索引、CDN、重定向和分析都由平台管理。
Git Sync 是一项可选集成,用于把 GitBook 空间映射到 GitHub 或 GitLab 仓库的某个分支。内容在编辑器与一个 .md 文件目录之间往返同步,这些文件使用 GitBook 扩展的 Markdown 方言编写({% hint %} 提示、标签页、内容引用、OpenAPI 块等)。同步是双向的:编辑器中的修改会向仓库推送提交,推送到该分支的提交也会更新编辑器。仓库只是镜像,而非来源:GitBook 的数据结构才是权威模型。
在 Livemark 这边,内容的组织方式不受限制:它按 glob 扫描(livemark.config.ts 中的 include/exclude),每篇文章的 URL 默认取决于文件在其 include glob 下的位置,也可以由前置元数据 frontmatter 中的 path: 字段指定。不要求必须有 docs/ 文件夹。GitBook 的内容按产品固定的层级组织(组织 → 集合 → 空间 → 页面),站点 URL 由这棵树推导而来。Git Sync 镜像以嵌套目录的形式反映这一层级。
内容能力
Livemark 接受 Markdown + MDX,支持嵌入 React 组件,将 frontmatter 作为一等概念(path、order、icon、sidebar、date、tags),并在构建时由 textlane 编译。
GitBook 的内容能力就是编辑器的块面板:段落、标题、列表、表格、提示(info/warning/danger/success)、标签页、可展开块、带标签组的代码块、文件、图片、绘图、数学公式(KaTeX)、嵌入内容(Figma、Loom 等)、API 方法块、OpenAPI 参考,以及内容引用(跨空间嵌入)。用户无法扩展自定义组件,可用的块就是 GitBook 提供的那些。Git Sync 使用的 Markdown 方言通过类似 Liquid 的标签来表示 CommonMark 中没有的块,例如 {% hint style="info" %}…{% endhint %} 和 {% tabs %}…{% endtabs %}。
OpenAPI 是一等输入:GitBook 可以导入 OpenAPI 规范并据此渲染 API 参考页面,这一点更接近 Mintlify 的能力,而不是 Livemark 的。
功能矩阵
| 能力 | Livemark | GitBook |
|---|---|---|
| 版本管理 | 部分支持(栏目或按分支部署) | 是(空间变体 / 版本组) |
| 国际化(i18n) | 是(内置) | 是(空间的按语言变体) |
| 搜索 | 是(Orama,客户端) | 是(托管,付费方案提供 GitBook AI / “Lens” 问答) |
| 博客 | 是(内置栏目类型) | 否 |
| 更新日志 | 是(栏目类型) | 否(Change Requests 是编辑工作流,而不是已发布的栏目) |
| Sitemap | 是 | 是(由平台生成) |
| RSS | 是(按博客栏目) | 否 |
| 主题 | 通过 .livemark/ 覆盖组件 | 通过站点设置自定义(颜色、字体、布局);不能覆盖模板 |
| 插件 | Vite 插件 + textlane | 专有集成(Intercom、Segment、GA 等) |
| 自定义路由 | .livemark/routes/(TanStack Router) | 否(URL 遵循空间 → 页面的层级) |
| 基于 OpenAPI 的 API 参考 | 否(手动) | 是(内置) |
| 独立工具链 | Node + npm | 用户侧无;SaaS |
输出与部署
Livemark 产出一个包含预渲染 HTML + 静态资源的目录(.livemark/build/client/),可以上传到任意静态托管服务。各托管平台的指南请参阅部署。
GitBook 不产出可部署的产物。站点默认托管在 <space>.gitbook.io,也可以通过 DNS 绑定自定义域名。CDN、TLS、重定向、访问控制和分析都在 GitBook 控制台中配置。自托管仅限 Enterprise 方案,标准方案不提供。最接近“你的内容”的产物,是 Git Sync 镜像写入所连接仓库的那些文件,而它们只是内容,并不是可构建的站点。
另请参阅
用 ❤ 和 Livemark 构建