Markdig — User Guide

Welcome to the Markdig documentation. Whether you are new to Markdig or an experienced user, this guide helps you make the most of the library.

Getting started

Guide What you'll learn
Getting started Install Markdig, parse your first Markdown, and render to HTML
Usage Parse, render, pipeline architecture, and common patterns

CommonMark syntax

Guide What you'll learn
CommonMark syntax Full reference for headings, paragraphs, emphasis, links, images, code, lists, blockquotes, and more

Extensions

Guide What it provides
Extensions overview Index of all 20+ built-in extensions
Tables Pipe tables and grid tables
Emphasis extras Strikethrough, subscript, superscript, inserted, marked
Task lists Checkbox task lists in GFM style
Mathematics Inline and block LaTeX math
Diagrams Mermaid, nomnoml, and other diagram languages
Alert blocks GitHub-style alerts: NOTE, TIP, WARNING, etc.
Footnotes Reference-style footnotes
Generic attributes Attach CSS classes, IDs, and attributes to any element
Custom containers Fenced ::: div containers
Abbreviations Abbreviation definitions and auto-expansion
Definition lists <dl> / <dt> / <dd> lists
Auto-identifiers Automatic heading IDs
Auto-links Automatic URL detection
Figures & footers Figures, footers, and citations
Emoji & SmartyPants Emoji shortcodes and smart typography
Media links Embedded YouTube, Vimeo, and media players
List extras Alpha and Roman numeral ordered lists
YAML front matter YAML metadata blocks
Other extensions Bootstrap, hardline breaks, JIRA links, globalization, and more

Developer guide

Guide What you'll learn
Developer guide overview How to extend Markdig with custom parsers and renderers
Abstract syntax tree Structure and traversal of the AST
Pipeline architecture How the parsing pipeline works
Creating extensions Implement IMarkdownExtension and register it
Parser authoring API Advanced authoring contracts and parser/AST parity APIs
Block parsers Write custom block-level parsers
Inline parsers Write custom inline-level parsers
Renderers Write custom renderers for HTML and other formats
Performance Tips for high-performance Markdown processing
Migration notes Compatibility notes for parser/AST authoring APIs