Markdown
Markdown
Fumadocs 的 Markdown 和 MDX 扩展功能
Fumadocs 提供了对 MDX(一种结合 Markdown 和 JSX 语法的标记语言)的扩展。框架支持在文档中直接导入组件和编写 JavaScript。
MDX 格式
MDX 允许在 Markdown 文件中嵌入 React 组件。MDX 不是 Fumadocs 唯一支持的格式,实际上你可以使用任何渲染器,如无头 CMS。
Fumadocs 支持 GitHub Flavored Markdown (GFM) 以及标准 MDX 语法,包括:
- 标题和格式(粗体、斜体、删除线)
- 列表(有序和无序)
- 引用和表格
- 图片和链接
Frontmatter
默认支持基于 YAML 的 frontmatter。title 属性在 Fumadocs UI 中定义页面的 h1 标题,因此通常不需要显式的 h1 Markdown 标题。
链接和导航
- 内部链接使用框架的
<Link />组件进行预取 - 外部链接自动接收安全属性(
rel="noreferrer noopener" target="_blank") - 自动链接适用于 Markdown 链接语法和纯 URL
内置组件
Cards
<Cards> 组件将 <Card> 元素分组,用于显示带有可选图标和描述的链接内容。
Callout
有五种 Callout 类型:info(默认)、warn/warning、error、success 和 idea。支持可选标题。
代码块
功能包括:
- 通过 Rehype Code 实现语法高亮
- 行号(支持可选起始值)
- Shiki Transformers 用于高亮特定行、单词或显示 diff
- 标签页组用于组织多个代码示例
- NPM 命令块自动生成各包管理器变体
其他组件
框架包含 Tabs、Accordion 和 Zoomable Image 组件用于增强文档。
标题功能
锚点从标题文本自动生成。自定义锚点使用 [#slug] 语法。特殊修饰符如 [!toc] 和 [toc] 控制目录可见性。
高级功能
<include> 组件(仅 Fumadocs MDX)引用外部 Markdown 或 MDX 文件以实现内容复用。