tessl install tessl/npm-marked@17.0.0A markdown parser built for speed
Best practices for secure markdown parsing.
Marked does NOT sanitize HTML output. Always use a sanitization library.
import { marked } from "marked";
import DOMPurify from "dompurify";
// UNSAFE
const unsafeHtml = marked.parse(userInput);
// SAFE
const dirty = marked.parse(userInput);
const clean = DOMPurify.sanitize(dirty);import { marked } from "marked";
import DOMPurify from "dompurify";
function safeRender(markdown) {
const html = marked.parse(markdown);
return DOMPurify.sanitize(html, {
ALLOWED_TAGS: ['p', 'strong', 'em', 'a', 'ul', 'ol', 'li'],
ALLOWED_ATTR: ['href']
});
}