Skip to content
Putting It All Together
step 1/5

Reading — step 1 of 5

Read

~1 min readProduction Concerns

Putting It All Together

You've built every layer:

LayerLesson
Headings1
Paragraphs2
Emphasis3
Links/images4
Lists5
Code6
Blockquotes/HR7
HTML escaping8
Extensions9

Production parsers:

  • CommonMark.js: reference implementation, ~600 test cases
  • markdown-it (JS): popular, plugin-based
  • marked (JS): smaller, fast
  • pulldown-cmark (Rust): blazing fast
  • Goldmark (Go): standard for Hugo
  • Markdig (.NET): for Razor pages
  • Python markdown, mistune: Python options

You should USE one, not write your own — the spec is full of edge cases. Building one is an excellent learning exercise (this course!).

What's NOT in CommonMark:

  • Tables (GFM)
  • Strikethrough (GFM)
  • Task lists (GFM)
  • Auto-link (with detection): https://... → link
  • Footnotes
  • Definition lists
  • Math (LaTeX)
  • Mermaid

Each renderer adds these as extensions.

Where you've seen Markdown:

  • README files (GitHub, GitLab, npm)
  • Static site generators (Hugo, Jekyll, Eleventy)
  • Documentation (Sphinx, MkDocs)
  • Blogging (Ghost, dev.to)
  • Discord, Slack, Reddit (subset)
  • Notion, Obsidian, Bear (variants)

You now understand the foundation.

Discussion

Ask a question, share an insight, or help someone who’s stuck.

Sign in to post a comment or reply.

Loading…