Markus

GitHub-flavored Markdown, plus a small vocabulary for layout intent.

GitHub Flavored Markdown in Markus

The GFM baseline Markus keeps on purpose.

GitHub Flavored Markdown

Markus starts from CommonMark plus the GFM extensions people already use in pull requests and README files. Directives wrap this baseline; they do not replace it.

Emphasis, links, and code

Markus is deliberately small. It is also deliberately boring about inline syntax: inline code, struck text, and standard links.

from markusmd import convert

html = convert("# Hello from Markus\n")

Autolinks such as https://github.com/AnthusAI/Markus should light up without extra markup.

Lists and tasks

  • Colon fences nest
  • YAML front matter is optional
  • Raw HTML is off unless you pass --allow-html
  1. Parse
  2. Validate against the registry
  3. Render semantic HTML
  • Tables
  • Strikethrough
  • Task lists
  • Inventing a new emphasis sigil

Tables

Put in the document Put in the theme
“This is a pull quote” Float, type, quotation marks
“These are peer cards” Responsive columns
“These are two views” Split vs stack
“This is supplemental” Disclosure, print hiding

Quotes and GFM alerts

Ordinary blockquotes remain blockquotes.

Note

GitHub-style alerts still parse as GFM. Prefer :::callout when you want Markus’s registry, attributes, and HTML.