rstcheck-core
Checks syntax of reStructuredText and code blocks nested within it
What it is and what it does
rstcheck-core is a library for validating reStructuredText documents and the code blocks they contain. It checks RST syntax correctness and can validate nested code in multiple languages—Bash, Python, C/C++, JSON, XML, YAML, Doctest, and reStructuredText itself. The package depends on docutils for RST parsing and pydantic for configuration, making it suitable for integration into documentation pipelines, CI/CD workflows, or as a linting component in larger tools.
The library is actively maintained and supports current Python versions (3.10+). It offers optional extras for additional functionality: TOML configuration support, Sphinx integration, and YAML validation. With no known security vulnerabilities and a permissive MIT license, it presents a low-friction option for projects that need to enforce RST quality as part of their build or validation process.
Use it for:
- Validate RST documentation in CI/CD pipelines to catch syntax errors before publishing.
- Check code examples embedded in docstrings or documentation for correctness.
- Lint Sphinx documentation projects to ensure consistent RST formatting.
- Integrate into pre-commit hooks to validate RST changes before commit.
- Validate YAML or JSON blocks within RST documents when using optional extras.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Validates reStructuredText syntax and checks code blocks embedded within it, supporting multiple languages including Python, Bash, C/C++, JSON, XML, YAML, and Doctest.
Yes. rstcheck-core is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive license. It solves a clear problem—validating RST and embedded code blocks—with minimal dependencies. Install it if you need RST validation in documentation workflows or CI pipelines.
Install
rstcheck-core on PyPI
pip
pip install rstcheck-coreuv
uv add rstcheck-corepoetry
poetry add rstcheck-coreInstalling rstcheck-core
Before you install
Low friction install with only two runtime dependencies (docutils and pydantic). Active maintenance with a release 17 days ago; repository is not archived and receives regular commits.
License in practice
MIT license is permissive, allowing use in commercial and private projects with minimal restrictions—only requiring license and copyright notice retention.
Quickstart
pip install rstcheck_core
from rstcheck_core.checker import RstChecker
checker = RstChecker()
results = checker.check_file('document.rst')
Requires Python 3.10 or later.
Verify before relying
- Whether the package can be used as a library API or is primarily a CLI tool—the fact sheet does not clarify the primary usage pattern.
- Performance characteristics when checking large documents or many files—no benchmarking data provided.
- Whether optional extras (toml, sphinx, yaml) are needed for typical usage or only for specific workflows.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — docutils, pydantic |
| Maintenance | actively maintained — 17 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 995,626/month — #4,549 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: rstcheck_core-1.3.1-py3-none-any.whl
Keywords: restructuredtext, rst, linter, static-analysis
Tags
More Quality Assurance packages
Coverage.py measures which lines of Python code…
permissive · top 1,000 on PyPI
ruffRuff is a Python linter and code formatter…
permissive · top 1,000 on PyPI
pexpectPexpect spawns and controls interactive console…
permissive · top 1,000 on PyPI
blackBlack reformats Python source code to a…
permissive · top 1,000 on PyPI
pytest-xdistpytest-xdist distributes pytest tests across…
permissive · top 1,000 on PyPI
cfn-lintValidates AWS CloudFormation templates in YAML…
permissive · top 1,000 on PyPI
rstcheckValidates reStructuredText syntax and checks…
permissive · top 5,000 on PyPI
sphinx-lintSphinx Lint checks reStructuredText and Python…
permissive · top 15,000 on PyPI
restructuredtext-lintLints reStructuredText documents for structural…
permissive · top 5,000 on PyPI
flake8-rst-docstringsA flake8 plugin that validates Python…
permissive · top 15,000 on PyPI
doc8doc8 is a style checker for reStructuredText…
permissive · top 5,000 on PyPI
docstrfmtAutomatically formats reStructuredText in files…
permissive · top 15,000 on PyPI
rich-rstRenders reStructuredText documents as Rich…
permissive · top 1,000 on PyPI
m2r2Converts markdown files with embedded…
permissive · top 15,000 on PyPI
doccmdRuns linters, formatters, and other…
permissive · top 15,000 on PyPI
sybilSybil parses and executes code examples…
permissive · top 15,000 on PyPI