rstcheck
Checks syntax of reStructuredText and code blocks nested within it
Decision gist · record as of 2026-08-14
Yes. rstcheck is actively maintained, has low install friction, carries a permissive MIT license, and solves a specific problem well: catching syntax errors in RST documents and their embedded code blocks. It's a natural fit for documentation-heavy projects and CI/CD pipelines. No known vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Low friction installation with a pure Python wheel.
- Active maintenance with a release 17 days ago and consistent CI coverage.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted use, modification, and distribution in both open-source and commercial contexts with minimal restrictions.
last release 2026-07-28 (17 days) · last repo commit 2026-08-10 · 256 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,047,999 downloads/mo, #4,448 on PyPI
Alternatives
Verify before relying
pip install rstcheck
rstcheck myfile.rst
# Or with optional features:
pip install rstcheck[sphinx,toml]- Whether rstcheck-core and typer dependencies introduce any notable constraints or vulnerabilities beyond the main package.
- Performance characteristics when checking large documentation sets or deeply nested code blocks.
- Exact behavior and coverage of the supported language checkers (C99, C++11) and whether they require external tools.
What it is and what it does
rstcheck is a linter and static analysis tool for reStructuredText documents that validates both RST syntax and the syntax of code blocks embedded within those documents. It checks code blocks written in Python, C, C++, Bash, Doctest, JSON, XML, and reStructuredText itself, reporting errors with line numbers and severity levels.
The tool is designed for documentation maintainers and developers who want to catch syntax errors in their RST files and embedded code examples before publishing. It integrates with pre-commit hooks for automated checking in CI/CD pipelines and supports optional configuration via pyproject.toml and Sphinx integration through installable extras.
Use it for
- Validate syntax in code examples within Sphinx documentation before building and publishing.
- Catch Python syntax errors in doctest blocks and code-block directives in RST files.
- Enforce code quality in technical documentation by checking C, C++, and Bash snippets for correctness.
- Integrate into pre-commit hooks to prevent RST and code-block errors from being committed.
- Verify reStructuredText markup itself for structural issues like title underline mismatches.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
rstcheck is actively maintained, has low install friction, carries a permissive MIT license, and solves a specific problem well: catching syntax errors in RST documents and their embedded code blocks. It's a natural fit for documentation-heavy projects and CI/CD pipelines. No known vulnerabilities.
Install
rstcheck on PyPI
Before you install
Low friction installation with a pure Python wheel. Active maintenance with a release 17 days ago and consistent CI coverage. Requires Python 3.10 or later.
Requires Python 3.10 or later.
License in practice
MIT license permits unrestricted use, modification, and distribution in both open-source and commercial contexts with minimal restrictions.
Quickstart
pip install rstcheck
rstcheck myfile.rst
# Or with optional features:
pip install rstcheck[sphinx,toml]
Verify before relying
- Whether rstcheck-core and typer dependencies introduce any notable constraints or vulnerabilities beyond the main package.
- Performance characteristics when checking large documentation sets or deeply nested code blocks.
- Exact behavior and coverage of the supported language checkers (C99, C++11) and whether they require external tools.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesrstcheck-coretyper |
| Maintenance | Actively maintained 17 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,047,999 / month, #4,448 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Topic :: Software Development :: Quality Assurance |
Evidence: rstcheck-6.3.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “restructuredtext linter”
- rstcheckValidates reStructuredText syntax and checks code blocks nested…
- rstcheck-coreValidates reStructuredText syntax and checks code blocks embedded…
- sphinx-lintSphinx Lint checks reStructuredText and Python documentation files…
Give your agent the search over MCP, or paste the wish link into any chat.
More Quality Assurance packages
Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.
Install it if you want to measure test completeness or enforce coverage thresholds in your project.
Ruff is a Python linter and code formatter written in Rust that combines linting, formatting, and code fixing into a single tool, replacing Flake8, Black, isort, and related utilities.
Pexpect spawns and controls interactive console applications by sending input and matching output patterns, automating tasks that would otherwise require manual interaction.
Black reformats Python source code to a consistent style by parsing entire files and rewriting them according to an opinionated, deterministic set of rules, eliminating manual formatting decisions.
pytest-xdist distributes pytest tests across multiple CPU cores or machines to speed up test execution, with the simplest usage being `pytest -n auto` to spawn workers equal to available CPUs.
Install it if your test suite takes long enough that parallelization would save meaningful time.
Validates AWS CloudFormation templates in YAML or JSON format against resource provider schemas and best practices, checking property values and configuration correctness.
Install it if you work with CloudFormation templates.
See also rstcheck-core · restructuredtext-lint · sphinx-lint · docstrfmt · doc8 · flake8-rst-docstrings · rich-rst · docsig · cpplint · code-annotations