# wooorm/markdown-rs

CommonMark compliant markdown parser in Rust with ASTs and extensions

Repository: https://github.com/wooorm/markdown-rs
Canonical: https://ross.abutalabs.com/products/markdown-rs
Homepage: https://docs.rs/markdown/
Language: Rust
License: MIT
License Family: permissive
Topics: commonmark, compiler, gfm, markdown, parse, render, rust, tokenize
Last push: 2025-04-23T15:50:02+00:00

## Health v2 (maintenance only)
Score: 42/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 18, release rhythm 40, longevity 100
- inputs: {"age_days": 1547, "days_push": 497, "days_rel": 497, "gap_med": 14.0, "n_releases_24m": 7}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1564, forks 92 (observed 2026-08-28T04:05:04.125149+00:00)

## What it is
markdown-rs is a CommonMark-compliant Markdown parser written in safe Rust, exposing both an mdast syntax tree and direct HTML compilation. It supports extensions such as GFM, MDX, math, and frontmatter, and is implemented as a no_std-compatible state machine with full positional information.

## Use cases
- convert markdown to html in rust
- parse markdown into an abstract syntax tree
- render gfm tables and task lists
- parse mdx documents
- safely render untrusted user markdown
- extract structure from markdown files
- support math and frontmatter in markdown

## When to choose
- you need 100% CommonMark or GFM compliance in Rust
- you want a safe-Rust parser with no unsafe code
- you need an AST with positional info for complex markdown tooling
- you need MDX, math, or frontmatter support
- you need no_std/embedded compatibility

## When to avoid
- you need a JavaScript markdown parser (use micromark or remark instead)
- you want to compile MDX to executable JavaScript (use mdxjs-rs)
- you need a WYSIWYG markdown editor rather than a parsing library

## Facets
- artifact type: library
- maturity: stable
- function: parser, templating, developer-tools
- domain: parsers, web-development, documentation, developer-tools
- platform: rust, cross-platform, wasm
- tags: markdown, commonmark, gfm, mdx, mdast, html-rendering, no-std, state-machine

## Member repositories
- wooorm/markdown-rs (main) score 42

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:04.125149+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:00:14.330339+00:00, confidence not recorded.
  - readme: https://github.com/wooorm/markdown-rs (fetched 2026-08-28T04:05:04.125149+00:00, sha b4dd8dfd155e)
  - homepage: https://docs.rs/markdown/ (fetched 2026-08-29T11:29:04.837345+00:00, sha 42b425344988)
  - site_page: https://docs.rs/about/builds (fetched 2026-08-29T11:29:04.866718+00:00, sha 811231ca4680)
  - site_page: https://docs.rs/ (fetched 2026-08-29T11:29:04.847412+00:00, sha 6df078bb2819)
  - site_page: https://docs.rs/crate/markdown/latest (fetched 2026-08-29T11:29:04.852711+00:00, sha 4962e23d1d2d)
  - site_page: https://docs.rs/crate/markdown/latest/features (fetched 2026-08-29T11:29:04.856929+00:00, sha b9cf339b1b41)
  - site_page: https://docs.rs/about (fetched 2026-08-29T11:29:04.860277+00:00, sha 29ab7986fbf5)
  - site_page: https://docs.rs/about/badges (fetched 2026-08-29T11:29:04.863670+00:00, sha 6588cac258af)
  - site_page: https://docs.rs/about/metadata (fetched 2026-08-29T11:29:04.869767+00:00, sha 0dcdccb2b2b2)
  - site_page: https://docs.rs/about/redirections (fetched 2026-08-29T11:29:04.871862+00:00, sha 1b1efd93105f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
