FindSoftware

cmark

C library and command-line program that parses CommonMark Markdown into a syntax tree and renders it as HTML, man, LaTeX, CommonMark or XML.

cmark is the C reference implementation of CommonMark, the Markdown syntax that has a written specification. It is both a shared library, libcmark, and a command-line program. The library parses CommonMark into an abstract syntax tree, lets a program change the tree, and renders it as HTML, groff man, LaTeX, CommonMark or an XML form of the tree. It has no external dependencies and is built with cmake, or with make, which calls cmake. The README names wrapper libraries that let other languages call libcmark, among them Go, Ruby, Python, Lua and PHP.

Worth knowing

By default the library removes raw HTML and links that use the javascript, vbscript, data or file schemes. The unsafe option turns that off, and the README recommends an HTML sanitizer for that case.

Identity

Status
Active
Maintainer
John MacFarlane2
Maintained by
Individual2
First release
20143

Rendering and deploy

Install with
make install (source)4

Releases

Current major version
Pre-1.05
Last release
2026-02-145

Adoption

GitHub stars
2,0411
Contributors
986

Why these figures do not compare

Sources

  1. 2026-11-04: links, Written in, GitHub stars
    api.github.com/repos/commonmark/cmark
  2. 2026-11-04: Maintainer, Maintained by, License
    github.com/commonmark/cmark/blob/master/COPYING
  3. 2026-11-04: First release
    api.github.com/repos/commonmark/cmark/commits/0.6
  4. 2026-11-04: License, License model, Install with, links
    github.com/commonmark/cmark/blob/master/README.md
  5. 2026-11-04: Current major version, Last release
    api.github.com/repos/commonmark/cmark/releases/latest
  6. 2026-11-04: Contributors
    api.github.com/repos/commonmark/cmark/contributors

Last reviewed · Listed since Edit on GitHubThis page as markdownas JSON