mdast utility to parse markdown.
npm:
npm install mdast-util-from-markdown
Say we have the following markdown file, example.md:
## Hello, *World*!
And our script, example.js, looks as follows:
var fs = require('fs') var fromMarkdown = require('mdast-util-from-markdown') var doc = fs.readFileSync('example.md') var tree = fromMarkdown(doc) console.log(tree)
Now, running node example yields (positional info removed for brevity):
{ type: 'root', children: [ { type: 'heading', depth: 2, children: [ {type: 'text', value: 'Hello, '}, { type: 'emphasis', children: [{type: 'text', value: 'World'}] }, {type: 'text', value: '!'} ] } ] }
fromMarkdown(doc[, encoding][, options])Parse markdown to a mdast tree.
docValue to parse (string or Buffer).
encodingCharacter encoding to understand doc as when it’s a Buffer (string, default: 'utf8').
options.extensionsArray of syntax extensions (Array.<MicromarkSyntaxExtension>, default: []). Passed to micromark as extensions.
options.mdastExtensionsArray of mdast extensions (Array.<MdastExtension>, default: []).
Root.
syntax-tree/mdast-util-directive — parse directivessyntax-tree/mdast-util-footnote — parse footnotessyntax-tree/mdast-util-frontmatter — parse frontmatter (YAML, TOML, more)syntax-tree/mdast-util-gfm — parse GFMsyntax-tree/mdast-util-gfm-autolink-literal — parse GFM autolink literalssyntax-tree/mdast-util-gfm-strikethrough — parse GFM strikethroughsyntax-tree/mdast-util-gfm-table — parse GFM tablessyntax-tree/mdast-util-gfm-task-list-item — parse GFM task list itemssyntax-tree/mdast-util-math — parse mathsyntax-tree/mdast-util-mdx — parse MDX or MDX.jssyntax-tree/mdast-util-mdx-expression — parse MDX or MDX.js expressionssyntax-tree/mdast-util-mdx-jsx — parse MDX or MDX.js JSXsyntax-tree/mdast-util-mdxjs-esm — parse MDX.js ESMAs Markdown is sometimes used for HTML, and improper use of HTML can open you up to a cross-site scripting (XSS) attack, use of mdast-util-from-markdown can also be unsafe. When going to HTML, use this utility in combination with hast-util-sanitize to make the tree safe.
micromark/micromark — the smallest commonmark-compliant markdown parser that existsremarkjs/remark — markdown processor powered by pluginssyntax-tree/mdast-util-to-markdown — serialize mdast to markdownSee contributing.md in syntax-tree/.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.