README
micromark-extension-mdxjs
micromark extension to support MDX.js.
Use micromark-extension-mdx
instead to support MDX agnostic to JS.
This package provides the low-level modules for integrating with the micromark tokenizer but has no handling of compiling to HTML: go to a syntax tree instead.
When to use this
You should probably use this package. If you don’t need all of MDX.js, the extensions can be used separately:
micromark/micromark-extension-mdx-expression
— support MDX (or MDX.js) expressionsmicromark/micromark-extension-mdx-jsx
— support MDX (or MDX.js) JSXmicromark/micromark-extension-mdx-md
— turn some markdown features off for MDX (or MDX.js)micromark/micromark-extension-mdxjs-esm
— support MDX.js ESM import/exports
Install
This package is ESM only:
Node 12+ is needed to use it and it must be import
ed instead of require
d.
npm:
npm install micromark-extension-mdxjs
Use
import {micromark} from 'micromark'
import {mdxjs} from 'micromark-extension-mdxjs'
const output = micromark('import a from "b"\n\na <b /> c {1 + 1} d', {
extensions: [mdxjs()]
})
console.log(output)
Yields:
<p>a c d</p>
…which is rather useless: go to a syntax tree with
mdast-util-from-markdown
and
mdast-util-mdx
instead.
API
This package exports the following identifiers: mdxjs
.
There is no default export.
mdxjs(options?)
A function that can be called with options that returns an extension for
micromark to parse MDX.js (can be passed in extensions
).
options
Options are the same as for mdx-expression
, mdx-jsx
, and mdxjs-esm
, but
come predefined to support JavaScript.
options.acorn
Acorn parser to use (Acorn
, default:
acorn.Parser.extend(acornJsx())
).
options.acornOptions
Options to pass to acorn (Object
, default: {ecmaVersion: 2020, sourceType: 'module'}
).
options.addResult
Whether to add an estree
field to tokens with the results from acorn
(boolean
, default: true
).
Related
micromark/micromark
— the smallest commonmark-compliant markdown parser that existsmicromark/micromark-extension-mdx
— micromark extension to support MDX (agnostic to JS)micromark/micromark-extension-mdx-expression
— micromark extension to support MDX (or MDX.js) expressionsmicromark/micromark-extension-mdx-jsx
— micromark extension to support MDX (or MDX.js) JSXmicromark/micromark-extension-mdx-md
— micromark extension to support misc MDX changesmicromark/micromark-extension-mdxjs-esm
— micromark extension to support MDX.js ESM import/exportssyntax-tree/mdast-util-mdx
— mdast utility to support MDX (or MDX.js)
Contribute
See contributing.md
in micromark/.github
for ways to get
started.
See support.md
for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.