Skip to main content


Plugin to support footnotes.


import MarkdownIt from "markdown-it";
import { footnote } from "@mdit/plugin-footnote";

const mdIt = MarkdownIt().use(footnote);

mdIt.render("Inline footnote^[Text of inline footnote] definition.");


  • Use [^Anchor text] in Markdown to define a footnote

  • Use block starting with [^Anchor text]: ... to describe footnote content

  • If there are multiple paragraph in footnote, the paragraph show be double indented.

Nesting and escaping

  • Nestings are supported:

    Footnote 1 link[^first].
    [^first]: Footnote can reference [^second].
    [^second]: Other footnote.
  • Escaping can be done by adding \:

    The following \[^first] is not a footnote.

    will be

    The following [^first] is not a footnote.


Footnote 1 link[1].

Footnote 2 link[2].

Inline footnote[3] definition.

Duplicated footnote reference.

Footnote 1 link[^first].

Footnote 2 link[^second].

Inline footnote^[Text of inline footnote] definition.

Duplicated footnote reference[^second].

[^first]: Footnote **can have markup**

    and multiple paragraphs.

[^second]: Footnote text.

  1. Footnote can have markup

    and multiple paragraphs[2:1]. ↩︎

  2. Footnote text. ↩︎ ↩︎

  3. Text of inline footnote ↩︎