skillfed

pymarkdownlnt

A GitHub Flavored Markdown compliant Markdown linter.

pymarkdownlnt v0.9.39 1.5M downloads/30d#3,827 on PyPI138
Permissive license MIT Active released

What it is and what it does

PyMarkdown is a command-line Markdown linter that parses documents according to GitHub Flavored Markdown and CommonMark specifications, then applies structure-aware rules to check for style and formatting issues. Unlike simple regex-based linters, it understands document structure—headings, lists, links, and other block elements—and makes rule decisions based on parsed tokens rather than raw text patterns.

The tool is built around a rule engine that loads and runs focused checks (like heading level validation or list indentation rules) and supports optional extensions for parsing variations. It runs on Windows, macOS, and Linux, requires Python 3.10 or later, and is designed to fit into existing workflows like static analysis pipelines, pre-commit hooks, or dependency management systems. Configuration is available for customizing which rules apply to your project.

Use it for:

  • Enforce consistent Markdown style in documentation repositories before commits or CI builds.
  • Validate technical documentation against GFM and CommonMark standards in automated pipelines.
  • Check Markdown files in a project directory for structural and formatting violations as part of code review.
  • Integrate into pre-commit workflows to catch Markdown issues before they reach version control.
  • Customize linting rules for project-specific Markdown guidelines without complex setup.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

PyMarkdown is a GitHub Flavored Markdown linter that analyzes document structure using a spec-compliant parser to enforce consistent Markdown style rules across files.

Yes. PyMarkdown is actively maintained, has low install friction, carries no known vulnerabilities, and offers structure-aware linting based on standardized specs—a meaningful step up from line-based pattern matching. Install it if you want automated Markdown quality checks in your project or CI pipeline.

Install

pymarkdownlnt on PyPI

pip

pip install pymarkdownlnt

uv

uv add pymarkdownlnt

poetry

poetry add pymarkdownlnt

Installing pymarkdownlnt

Before you install

Low install friction with a pure Python wheel distribution. The project is actively maintained with recent releases and shows consistent commit activity. Five runtime dependencies are all lightweight utilities.

License in practice

MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal restrictions.

Quickstart

pip install pymarkdownlnt
pymarkdown scan .

Requires Python 3.10 or later.

Verify before relying

  • Whether custom rule plugins can be written by users or if rules are fixed to the built-in set.
  • Performance characteristics when linting large Markdown document collections.
  • Whether the linter integrates with common CI/CD platforms or pre-commit hooks beyond what the description mentions.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10.0)
Install friction low — pure-Python wheel
Runtime dependencies 5 — typing-extensions, application-properties, application-file-scanner, columnar, py-walk
Maintenance actively maintained — 33 days since the last release
Last repo commit
First released
Downloads 1,508,368/month — #3,827 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pymarkdownlnt-0.9.39-py3-none-any.whl

Keywords: markdown, linter, markdown linter

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Topic :: Software Development :: Libraries :: Application Frameworks

Tags

markdown lintermarkdown style checkergfm lintercommonmark lintermarkdown validationmarkdown quality checksmarkdown formatting rules
markdown-lintingcli-toolspec-compliant

More Application Frameworks packages