The lintquarto package enables you to run a range of linters and static type checkers on python code in Quarto .qmd files.

This page provides an overview of the available tools.

Use the sidebar to explore ready-to-run examples and detailed usage for each tool.


General linters

Tool Description
flake8 Lightweight tool focused on PEP-8 style, basic errors, and code complexity.
pycodestyle Checks against PEP-8 style guidelines.
pyflakes Checks for logical errors like undefined names and unused imports.
pylint Detailed linter that detects errors, bugs, variable naming issues, and other code problems.
ruff Modern, ultra-fast linter that implements checks from Flake8 and some other popular plugins.

Specialty linters

Tool Speciality Description
radon Complexity Computes code metrics - lintquarto supports calculating complexity metrics.
vulture Dead Code Finds unused code.

Static type checkers

Tool Description
mypy Python’s popular static type checker.
pyrefly Meta’s Rust-based static type checker (successor to Pyre).
pyright Microsoft’s static type checker.
pytype Google’s static type checker.