{"slug": "commonmark", "name": "CommonMark", "category": "notes", "category_name": "Notes and knowledge", "description": "", "recommenders": 4, "commenters": 5, "warners": 1, "score": 2.414, "rising": -1.31, "first": "2025-11-12", "latest": "2026-07-06", "why": "I recommend looking more closely at the CommonMark universe and innovating there.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 4, "neutral": 0, "compare": 0, "warn": 1}, "spark": [1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "I recommend looking more closely at the CommonMark universe and innovating there.", "kind": "", "icon": true, "domain": "commonmark.org", "github_repo": null, "official_url": "https://commonmark.org", "pricing": "", "aliases": ["CommonMark"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 766888896, "item_id": 47930556, "url": "https://news.ycombinator.com/item?id=47930556", "by": "dash2", "date": "2026-04-27", "version": null, "stance": "recommend", "quote": "Commonmark (https://commonmark.org) is a specification designed to address this issue.", "excerpt": "Commonmark (https://commonmark.org) is a specification designed to address this issue.", "context": "", "use_case": "", "switched_from": "", "story": "Quarkdown \u2013 Markdown with Superpowers"}, {"id": 745007360, "item_id": 46562960, "url": "https://news.ycombinator.com/item?id=46562960", "by": "dpark", "date": "2026-01-09", "version": null, "stance": "recommend", "quote": "This is what yielded CommonMark.", "excerpt": "That\u2019s because Gruber shut down the effort to standardize markdown. He declined to participate and then demanded that \u201cStandard Markdown\u201d be shut down when it went public. This is what yielded CommonMark. https://blog.codinghorror.com/standard-markdown-is-now-common-markdown/ So we are left in the mode where markdown remains needlessly fractured. Different flavors that render slightly different and everyone gets a li", "context": "", "use_case": "", "switched_from": "", "story": "How Markdown Took over the World"}, {"id": 742951937, "item_id": 46434496, "url": "https://news.ycombinator.com/item?id=46434496", "by": "jjjbokma", "date": "2025-12-30", "version": null, "stance": "recommend", "quote": "Nice to see another static site generator that uses commonmark.", "excerpt": "Nice to see another static site generator that uses commonmark. I use it as well in `tumblelog` which is available on [GitHub](https://github.com/john-bokma/tumblelog/). It's less lightweight as it supports tags, an RSS feed, and a JSON feed. Example site: [Plurrrr](https://plurrrr.com/).", "context": "", "use_case": "Markdown parsing", "switched_from": "", "story": "Makesite: Simple, lightweight, and magic-free static site/blog generator (2022)"}, {"id": 734421873, "item_id": 45901367, "url": "https://news.ycombinator.com/item?id=45901367", "by": "finallyspeaking", "date": "2025-11-12", "version": null, "stance": "recommend", "quote": "I recommend looking more closely at the CommonMark universe and innovating there.", "excerpt": "Laudable, but I don't think TapirMD will gain much traction. First, your landing page doesn't describe how TapirMD fits into the Markdown universe. I just see a list of features. Why should I read the list? Ah, the spec page[0] has some info, but it should really be on the landing page. Second, and more importantly, TapirMD is not a superset of CommonMark[1]. GitHub had its own flavor of MD, but it's been some years ", "context": "", "use_case": "Markdown standard", "switched_from": "", "story": "Zensical \u2013 A modern static site generator built by the Material for MkDocs team"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 780834032, "item_id": 48802127, "url": "https://news.ycombinator.com/item?id=48802127", "by": "gritzko", "date": "2026-07-06", "version": null, "stance": "warn", "quote": "CommonMark spec[1] is laaarge and not formal (no grammar).", "excerpt": "CommonMark spec[1] is laaarge and not formal (no grammar). StrictMark has block-level[2] and inline[3] grammars, 100+ and 200+ lines of Ragel code respectively. These are from the C implementation in libdog, a library of revision control / code tokenization routines for Beagle the revision control system. It has its own code browser that highlights Markdown in comments, follows links, etc. May parse with regexes too,", "context": "", "use_case": "", "switched_from": "", "story": "Shrimple \u2013 A Simpler, Nicer Markdown"}]}], "who": [], "tags": [], "use_cases": ["markdown parsing", "markdown standard"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=48800026", "title": "Shrimple \u2013 A Simpler, Nicer Markdown", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47919240", "title": "Quarkdown \u2013 Markdown with Superpowers", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46556695", "title": "How Markdown Took over the World", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46375328", "title": "Makesite: Simple, lightweight, and magic-free static site/blog generator (2022)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=45865189", "title": "Zensical \u2013 A modern static site generator built by the Material for MkDocs team", "mentions": 1}], "sentiment_by_month": {"2025-11": {"recommend": 1}, "2025-12": {"recommend": 1}, "2026-01": {"recommend": 1}, "2026-02": {}, "2026-03": {}, "2026-04": {"recommend": 1}, "2026-05": {}, "2026-06": {}, "2026-07": {"warn": 1}, "2026-08": {}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 780834032, "item_id": 48802127, "url": "https://news.ycombinator.com/item?id=48802127", "by": "gritzko", "date": "2026-07-06", "version": null, "stance": "warn", "quote": "CommonMark spec[1] is laaarge and not formal (no grammar).", "excerpt": "CommonMark spec[1] is laaarge and not formal (no grammar). StrictMark has block-level[2] and inline[3] grammars, 100+ and 200+ lines of Ragel code respectively. These are from the C implementation in libdog, a library of revision control / code tokenization routines for Beagle the revision control system. It has its own code browser that highlights Markdown in comments, follows links, etc. May parse with regexes too,", "context": "", "use_case": "", "switched_from": "", "story": "Shrimple \u2013 A Simpler, Nicer Markdown"}, {"id": 766888896, "item_id": 47930556, "url": "https://news.ycombinator.com/item?id=47930556", "by": "dash2", "date": "2026-04-27", "version": null, "stance": "recommend", "quote": "Commonmark (https://commonmark.org) is a specification designed to address this issue.", "excerpt": "Commonmark (https://commonmark.org) is a specification designed to address this issue.", "context": "", "use_case": "", "switched_from": "", "story": "Quarkdown \u2013 Markdown with Superpowers"}, {"id": 745007360, "item_id": 46562960, "url": "https://news.ycombinator.com/item?id=46562960", "by": "dpark", "date": "2026-01-09", "version": null, "stance": "recommend", "quote": "This is what yielded CommonMark.", "excerpt": "That\u2019s because Gruber shut down the effort to standardize markdown. He declined to participate and then demanded that \u201cStandard Markdown\u201d be shut down when it went public. This is what yielded CommonMark. https://blog.codinghorror.com/standard-markdown-is-now-common-markdown/ So we are left in the mode where markdown remains needlessly fractured. Different flavors that render slightly different and everyone gets a li", "context": "", "use_case": "", "switched_from": "", "story": "How Markdown Took over the World"}, {"id": 742951937, "item_id": 46434496, "url": "https://news.ycombinator.com/item?id=46434496", "by": "jjjbokma", "date": "2025-12-30", "version": null, "stance": "recommend", "quote": "Nice to see another static site generator that uses commonmark.", "excerpt": "Nice to see another static site generator that uses commonmark. I use it as well in `tumblelog` which is available on [GitHub](https://github.com/john-bokma/tumblelog/). It's less lightweight as it supports tags, an RSS feed, and a JSON feed. Example site: [Plurrrr](https://plurrrr.com/).", "context": "", "use_case": "Markdown parsing", "switched_from": "", "story": "Makesite: Simple, lightweight, and magic-free static site/blog generator (2022)"}, {"id": 734421873, "item_id": 45901367, "url": "https://news.ycombinator.com/item?id=45901367", "by": "finallyspeaking", "date": "2025-11-12", "version": null, "stance": "recommend", "quote": "I recommend looking more closely at the CommonMark universe and innovating there.", "excerpt": "Laudable, but I don't think TapirMD will gain much traction. First, your landing page doesn't describe how TapirMD fits into the Markdown universe. I just see a list of features. Why should I read the list? Ah, the spec page[0] has some info, but it should really be on the landing page. Second, and more importantly, TapirMD is not a superset of CommonMark[1]. GitHub had its own flavor of MD, but it's been some years ", "context": "", "use_case": "Markdown standard", "switched_from": "", "story": "Zensical \u2013 A modern static site generator built by the Material for MkDocs team"}]}