Structurize

Extract information from your documents, useful for implementing document search

Usage

Add it as a remark plugin.

import { remarkStructure } from 'fumadocs-core/mdx-plugins';

export default {
  remarkPlugins: [remarkStructure],
};

Extracted information could be found in vfile.data.structuredData, you may write your own plugin to convert it into a MDX export.

Options

Option
typesmdast element types to be scanned

Output

A list of headings and contents. Paragraphs will be extracted to the contents array, each item contains a heading prop indicating the heading of paragraph.

Note
A heading can have multiple paragraphs.

Heading

Prop
idunique identifer or slug of heading
contentText content

Content

Prop
headingHeading of paragraph (nullable)
contentText content

As a Function

Accepts MDX/markdown content and return structurized data.

import { structure } from 'fumadocs-core/mdx-plugins';

structure(page.body.raw);
Tip

If you have custom remark plugins enabled, such as remark-math, you have to manually structurize the document with these plugins passed into the function:

import { structure } from 'fumadocs-core/mdx-plugins';
import remarkMath from 'remark-math';

structure(page.body.raw, [remarkMath]);

Parameters

Parameter
contentMDX/markdown content
remarkPluginsList of remark plugins
optionsCustom options

Last updated on