An extremely fast Python linter, written in Rust. Ruff aims to be orders of magnitude faster than alternative tools while integrating more functionality behind a single, common interface. Ruff can be used to replace Flake8 (plus dozens of plugins), isort, pydocstyle, yesqa, eradicate, pyupgrade, and autoflake, all while executing tens or hundreds of times faster than any individual tool. Ruff is extremely actively developed and used in major open-source projects. Ruff can be configured through a pyproject.toml, ruff.toml, or .ruff.toml file (see: Configuration, or Settings for a complete list of all configuration options). Ruff supports over 500 lint rules, many of which are inspired by popular tools like Flake8, isort, pyupgrade, and others. Regardless of the rule's origin, Ruff re-implements every rule in Rust as a first-party feature.

Features

  • 10-100x faster than existing linters
  • Installable via pip
  • Python 3.11 compatibility
  • Built-in caching, to avoid re-analyzing unchanged files
  • Autofix support, for automatic error correction (e.g., automatically remove unused imports)
  • Over 500 built-in rules
  • Near-parity with the built-in Flake8 rule set

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow Ruff

Ruff Web Site

You Might Also Like
Gen AI apps are built with MongoDB Atlas Icon
Gen AI apps are built with MongoDB Atlas

The database for AI-powered applications.

MongoDB Atlas is the developer-friendly database used to build, scale, and run gen AI and LLM-powered apps—without needing a separate vector database. Atlas offers built-in vector search, global availability across 115+ regions, and flexible document modeling. Start building AI apps faster, all in one place.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Ruff!

Additional Project Details

Programming Language

Python, Rust

Related Categories

Python Linters, Python Static Code Analysis Tool, Rust Linters, Rust Static Code Analysis Tool

Registered

2023-03-30