Что это такое?
Marked — это парсер и компилятор markdown, созданный для скорости. Вы подаёте ему markdown-текст и получаете HTML, а работать он может в браузере, на сервере или из командной строки.
Это библиотека, которую я использую в коде, или готовое приложение?
Это JavaScript-библиотека, которую вы вызываете из своего кода, плюс небольшой CLI для конвертации markdown прямо в терминале. Есть и демо-страница, если хочется просто вставить markdown и увидеть результат.
Как добавить его в проект?
Установите через npm: глобально для CLI (npm install -g marked) или как зависимость проекта для использования в коде; в браузере подключите его тегом script или импортируйте ESM-модуль. Документация находится на marked.js.org.
Что нужно установить, чтобы он заработал?
Для работы на сервере или в CLI нужна поддерживаемая версия Node.js: только актуальные и LTS-релизы, пакет ориентируется на Node 20+. В браузере подойдёт любой браузер уровня Baseline Widely Available, а сама библиотека не имеет ни одной зависимости в рантайме.
Можно ли вставлять сгенерированный HTML прямо на свою страницу без опаски?
Нет — Marked не очищает свой вывод. Если хоть какая-то часть markdown может приходить от пользователей, сначала прогоните полученный HTML через санитайзер вроде DOMPurify (рекомендуется), sanitize-html или insane.
Где он работает?
Везде, где работает JavaScript: в современных браузерах (Baseline Widely Available), в Node.js на сервере и в терминале через его CLI.
Под какой лицензией он распространяется?
MIT, поэтому его можно свободно использовать в личных и коммерческих проектах. Права принадлежат MarkedJS (с 2018 года) и Christopher Jeffrey (2011–2018).
В чём главное преимущество Marked?
Скорость и лёгкость: это низкоуровневый компилятор, который разбирает markdown без кэширования и долгих блокировок, оставаясь при этом лёгким и реализуя все возможности markdown из поддерживаемых диалектов и спецификаций.
Поддерживаются ли GFM и CommonMark?
Он реализует все возможности markdown из поддерживаемых диалектов и спецификаций, а в репозитории среди тем явно указаны спецификации commonmark и gfm.
Можно ли добавить свой синтаксис или поведение?
Да. Расширяемость — одна из ключевых возможностей: Marked легко адаптируется с помощью пользовательских расширений, а в документации есть раздел Extensibility рядом со справочником Options.
Есть ли простой способ попробовать его перед установкой?
Да — в README есть ссылка на демо-страницу, где можно увидеть Marked в действии, да и сам сайт документации отрисован с помощью Marked.
What are similar projects?
turndown, markdown-it, tui.editor, editor.md, liteparse, react-markdown, virtual-dom, million
Which topics is it in?
gfm, commonmark, speed, parser, rendering, compiler, javascript-library, browser, command-line, developers, hacktoberfest, html