marked

A markdown parser and compiler. Built for speed.

37,051 stars JavaScript Markdown Skills API Spec #commonmark#compiler#gfm#hacktoberfest
AI Prompts & Specs

Repository: markedjs/marked


Stars: 36743

README.md

<a href="https://marked.js.org">
<img width="60px" height="60px" src="https://marked.js.org/img/logo-black.svg" align="right" />
</a>

Marked

![npm](https://www.npmjs.com/package/marked)
![install size](https://packagephobia.now.sh/result?p=marked)
![downloads](https://www.npmjs.com/package/marked)
![github actions](https://github.com/markedjs/marked/actions)
![snyk](https://snyk.io/test/npm/marked)

- ⚡ 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:

* Options
* Extensibility

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:

sh
npm install -g marked

In-browser:

sh
npm install marked

Usage

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

CLI

`` bash

Example with stdin input


$ marked -o hello.html
hello world
^D
$ cat hello.html
<p>hello world</p>
text
bash

Print all options


$ marked --help
text
Browser
html
<!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>
text
or import esm module
html
<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)