markedjs

    markedjs/marked

    A markdown parser and compiler. Built for speed.

    documentation
    commonmark
    compiler
    gfm
    hacktoberfest
    markdown
    parser
    JavaScript
    NOASSERTION
    36.8K stars
    3.5K forks
    36.8K watching
    Updated 3/29/2026
    View on GitHub
    Backblaze Advertisement

    Loading star history...

    Health Score

    25.16

    Weekly Growth

    +76

    +0.2% this week

    Contributors

    1

    Total contributors

    Open Issues

    15

    Generated Insights

    About marked

    Marked

    npm install size downloads github actions snyk

    • ⚡ built for speed
    • ⬇️ low-level compiler for parsing markdown without caching or blocking for long periods of time
    • ⚖️ light-weight while implementing all markdown features from the supported flavors & specifications
    • 🌐 works in a browser, on a server, or from a command line interface (CLI)

    Demo

    Check out the demo page to see Marked in action ⛹️

    Docs

    Our documentation pages are also rendered using marked 💯

    Also read about:

    Compatibility

    Node.js: Only current and LTS Node.js versions are supported. End of life Node.js versions may become incompatible with Marked at any point in time.

    Browser: Baseline Widely Available

    Installation

    CLI:

    npm install -g marked
    

    In-browser:

    npm install marked
    

    Usage

    DOMPurify.sanitize(marked.parse(`<img src="x" onerror="alert('not happening')">`));
    

    CLI

    # Example with stdin input
    $ marked -o hello.html
    hello world
    ^D
    $ cat hello.html
    <p>hello world</p>
    
    # Print all options
    $ marked --help
    

    Browser

    <!doctype html>
    <html>
    <head>
      <meta charset="utf-8"/>
      <title>Marked in the browser</title>
    </head>
    <body>
      <div id="content"></div>
      <script src="https://cdn.jsdelivr.net/npm/marked/lib/marked.umd.js"></script>
      <script>
        document.getElementById('content').innerHTML =
          marked.parse('# Marked in the browser\n\nRendered by **marked**.');
      </script>
    </body>
    </html>
    

    or import esm module

    <script type="module">
      import { marked } from "https://cdn.jsdelivr.net/npm/marked/lib/marked.esm.js";
      document.getElementById('content').innerHTML =
        marked.parse('# Marked in the browser\n\nRendered by **marked**.');
    </script>
    

    License

    Copyright (c) 2018+, MarkedJS. (MIT License) Copyright (c) 2011-2018, Christopher Jeffrey. (MIT License)

    Discover Repositories

    Search across tracked repositories by name or description