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

Build gen AI apps with an all-in-one modern database: MongoDB Atlas

MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
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

Rust

Related Categories

Rust Static Code Analysis Tool

Registered

2023-03-30