跳转到正文

简介

Onedocs 是一组布局、组件和辅助函数,用于构建基于 Next.js 和 Fumadocs 的文档网站。你编写 Markdown,在一个配置文件中描述网站,然后由 Onedocs 提供文档框架、主页和 SEO 路由。

它适用于独立的文档网站,不适用于为现有应用添加文档。

Onedocs 提供的功能

在 Fumadocs 的基础上,onedocs 包为你提供:

  • 布局 - DocsLayout 和 DocsPage 为 Fumadocs UI 文档布局添加外层框架,包含侧边栏、搜索、主题切换和目录。HomePage 会渲染带有主视觉、安装命令、功能介绍和页脚的落地页。
  • 单个配置文件 - onedocs.config.ts 保存标题、描述、徽标、站点图标、导航链接、页脚和主页内容。
  • MDX 组件 - mdxComponents 会注册提示框、选项卡、卡片、步骤、折叠面板、文件树、图片缩放和类型表格,页面无需导入即可使用。
  • CSS 预设 - 只需一次导入,即可引入 Tailwind CSS v4、Fumadocs UI 主题和 Onedocs 布局样式。
  • SEO 辅助函数 - 用于 sitemap.xml、robots.txt、llms.txt、llms-full.txt、页面元数据和 Open Graph 图片的函数。

需要自行设置的内容

Onedocs 不会捆绑 Next.js 或 Fumadocs。它们是对等依赖项,需要与它一同安装:

命令行
npm install onedocs fumadocs-core fumadocs-mdx fumadocs-ui lucide-react@0.562 next react react-dom

你还需要 Tailwind CSS v4、Node.js 20.9 或更高版本,以及大约十个小文件:Next.js 和 Fumadocs MDX 配置文件、一个内容源、根布局、文档布局和文档页面路由。入门指南逐一介绍了这些文件。

配置位置

内容 位置
站点标题、徽标、导航、页脚 onedocs.config.ts,参见 配置
首页主视觉区和功能 homepage,位于 onedocs.config.ts 中,由 HomePage 在 src/app/page.tsx 中渲染
文档布局和页面 src/app/docs/layout.tsx 和 src/app/docs/[[...slug]]/page.tsx,参见 入门指南
内容文件夹和侧边栏顺序 source.config.ts 和 content/docs/meta.json
MDX 组件 mdxComponents,参见 组件
搜索、站点地图、robots.txt、llms.txt src/app/ 下的路由文件,参见 SEO 与搜索
元数据和 Open Graph 图像 onedocs/metadata 和 onedocs/og,参见 API参考

设计理念

  • Markdown 优先 - 编写 .md 或 .mdx,即可生成文档
  • 单个配置文件 - 全站设置都在 onedocs.config.ts 中
  • 灵活扩展 - 需要更多控制?直接使用 Fumadocs

从这里开始