Skip to main content

Module markdownlint

Module markdownlint 

Source
Expand description

Markdown linting and formatting gate (native Rust, no shell-out).

This is the MVP rule-set tracked under issue #549. It covers the markdownlint-style rules that catch the bulk of authoring drift without requiring a full upstream markdownlint-rs integration — the depth-of-coverage roadmap calls out adding the upstream port once it stabilises for 2026 toolchains.

Rules enforced:

  • MD009 — no trailing whitespace at end of line.
  • MD010 — no hard tabs (use spaces).
  • MD025 — at most one top-level # heading per file.
  • MD034 — no bare http:// / https:// URLs (must be in [text](url) or <url> form).
  • MD041 — file must start with a top-level heading (or YAML frontmatter followed by one).

Scans the content directory (<site>/../content or the sibling content/ dir). When neither exists the gate emits an info note and skips — matches the behaviour of the docs gates.

Structs§

MarkdownlintGate
Markdown linting + formatting gate.