Ruff
Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.
What Ruff is
Ruff is a Python linter and code formatter written in Rust. It is designed to replace Flake8 and its plugins, Black, isort, pydocstyle, pyupgrade and autoflake. Its built-in rules include native reimplementations of Flake8 plugins such as flake8-bugbear. Fix support corrects errors automatically, for example by removing unused imports. Built-in caching skips unchanged files. Configuration lives in pyproject.toml, ruff.toml or .ruff.toml, with hierarchical and cascading discovery for monorepos. The ruff check and ruff format commands lint and format files. It also runs as a pre-commit hook, a GitHub Action and through editor integrations such as VS Code. Installation options include uv, pip, pipx and standalone installers.
Written from the project's README, read .
- Category
- Code quality and static analysis
- License
- MIT
- Language
- Rust
- Changelog
- Releases on GitHub
Repository metrics
Status
activeLast commit within 90 days of the fetch date.Computed from the last commit date and the archive flag on the fetch date. See the status rules.
Alternatives
Listed code quality and static analysis tools, same primary language first, then by GitHub stars. Each line gives one fact from the tool's documentation where it differs from Ruff's, with its source. See also Ruff alternatives.
ShellCheck: Languages or files analysed: Shell scripts in the sh, bash, dash, ksh and BusyBox dialects. source: Docs: shellcheck(1) manual
ESLint: Languages or files analysed: ECMAScript/JavaScript code; JSX parsing when enabled. source: README
mypy: Languages or files analysed: Python programs with type hints. source: README
golangci-lint: Languages or files analysed: Go code. source: README
Semgrep: Languages or files analysed: Community supported in Semgrep CE: C/C++, C#, Go, Java, JavaScript, TypeScript, Kotlin, Python, Ruby, Rust, PHP, Scala, Swift, Terraform. source: Docs: Supported languages for Semgrep Community Edition (CE)
Infer: Languages or files analysed: Java, C++, Objective-C and C. source: README
PHPStan: Languages or files analysed: PHP code. source: README
RuboCop: Languages or files analysed: Ruby code (targets Ruby 2.0 and later). source: README
Comparisons
How to install
pip install ruffQuestions
Is Ruff open source?
Yes. Ruff is released under MIT, an OSI-approved license, as reported by the GitHub API on 2026-09-22.
Is Ruff maintained?
On 2026-09-22, the last commit to the default branch was on 2026-09-22, so the listed status is active. Rule: Last commit within 90 days of the fetch date.
How many GitHub stars does Ruff have?
49,731 stars on 2026-09-22, from the GitHub API. The number is refreshed at each monthly update.
What language is Ruff written in?
The repository's primary language, as reported by the GitHub API, is Rust.
How do I install Ruff?
The README gives this command: pip install ruff
Sources
- GitHub REST API: repository, read
- GitHub REST API: commits, read
- GitHub REST API: latest release, read
- GitHub REST API: contributors, read
- README, read