What is @docusaurus/mdx-loader?
@docusaurus/mdx-loader is a webpack loader for MDX (Markdown with JSX) files, specifically designed to work with Docusaurus, a static site generator. It allows you to write content in Markdown and embed React components within that content.
What are @docusaurus/mdx-loader's main functionalities?
Loading MDX files
This feature allows you to load and process MDX files using webpack. The loader converts MDX content into React components, enabling you to use Markdown and JSX together.
module.exports = {
module: {
rules: [
{
test: /\.mdx?$/,
use: [
{
loader: '@docusaurus/mdx-loader',
options: {
// Options for the loader
},
},
],
},
],
},
};
Customizing MDX processing
This feature allows you to customize the MDX processing by adding remark and rehype plugins. In this example, the loader is configured to use 'remark-math' and 'rehype-katex' plugins for rendering mathematical expressions.
module.exports = {
module: {
rules: [
{
test: /\.mdx?$/,
use: [
{
loader: '@docusaurus/mdx-loader',
options: {
remarkPlugins: [require('remark-math')],
rehypePlugins: [require('rehype-katex')],
},
},
],
},
],
},
};
Other packages similar to @docusaurus/mdx-loader
mdx-loader
mdx-loader is a webpack loader for MDX files, similar to @docusaurus/mdx-loader but not specifically tailored for Docusaurus. It allows you to use MDX in any webpack-based project.
gatsby-plugin-mdx
gatsby-plugin-mdx is a plugin for Gatsby that enables the use of MDX in Gatsby projects. It provides similar functionality to @docusaurus/mdx-loader but is designed to work within the Gatsby ecosystem.
next-mdx-remote
next-mdx-remote is a library for using MDX with Next.js. It allows you to load MDX content remotely and render it in Next.js pages, providing similar capabilities to @docusaurus/mdx-loader but for the Next.js framework.
@docusaurus/mdx-loader
Docusaurus webpack loader for MDX.
Installation
yarn add @docusaurus/mdx-loader
Usage
module: {
rules: [
{
test: /\.mdx?$/,
use: [
'babel-loader',
{
loader: '@docusaurus/mdx-loader',
options: {
},
},
],
},
];
}
Options
rehypePlugins
Array of rehype plugins to manipulate the MDXHAST
Array of remark plugins to manipulate the MDXAST
metadataPath
A function to provide the metadataPath depending on current loaded MDX path that will be exported as the MDX metadata.
markdownConfig
The global Docusaurus Markdown config (config.markdown
), that plugin authors should forward:
const loader = {
loader: require.resolve('@docusaurus/mdx-loader'),
options: {
markdownConfig: siteConfig.markdown,
},
};