Socket
Socket
Sign inDemoInstall

mdast-util-from-markdown

Package Overview
Dependencies
12
Maintainers
2
Versions
29
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    mdast-util-from-markdown

mdast utility to parse markdown


Version published
Weekly downloads
7.8M
increased by6.88%
Maintainers
2
Install size
567 kB
Created
Weekly downloads
 

Package description

What is mdast-util-from-markdown?

The mdast-util-from-markdown package is a utility to parse Markdown and convert it into a Markdown Abstract Syntax Tree (MDAST). It allows developers to work with the tree structure to manipulate, inspect, or transform Markdown content programmatically.

What are mdast-util-from-markdown's main functionalities?

Parsing Markdown to MDAST

This feature allows you to parse a Markdown string and produce an MDAST. The MDAST can then be manipulated or inspected as needed.

import { fromMarkdown } from 'mdast-util-from-markdown';
const mdast = fromMarkdown('# Hello world');

Using plugins to extend parsing capabilities

This feature enables the use of plugins to extend the parsing capabilities of the utility. For example, using the 'micromark-extension-gfm' plugin to support GitHub Flavored Markdown (GFM) features like task lists.

import { fromMarkdown } from 'mdast-util-from-markdown';
import gfm from 'micromark-extension-gfm';
const mdast = fromMarkdown('# Hello world\n\n- [ ] task list item', {extensions: [gfm()]});

Other packages similar to mdast-util-from-markdown

Readme

Source

mdast-util-from-markdown

Build Coverage Downloads Size Sponsors Backers Chat

mdast utility to parse markdown.

Install

npm:

npm install mdast-util-from-markdown

Use

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: '!'}
      ]
    }
  ]
}

API

fromMarkdown(doc[, encoding][, options])

Parse markdown to a mdast tree.

Parameters
doc

Value to parse (string or Buffer).

encoding

Character encoding to understand doc as when it’s a Buffer (string, default: 'utf8').

options.extensions

Array of syntax extensions (Array.<MicromarkSyntaxExtension>, default: []). Passed to micromark as extensions.

options.mdastExtensions

Array of mdast extensions (Array.<MdastExtension>, default: []).

Returns

Root.

List of extensions

Security

As 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.

Contribute

See 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.

License

MIT © Titus Wormer

Keywords

FAQs

Last updated on 30 Sep 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc