awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
astral-sh avatar

astral-sh/ruff

0
View on GitHub↗
48,177 stars·2,177 forks·Rust·MIT·12 viewsdocs.astral.sh/ruff↗

Ruff

Ruff is a high-performance static analysis and code formatting tool designed for Python. Built in Rust, it functions as a comprehensive engine that scans source code to detect programming errors, security vulnerabilities, and deviations from established coding standards. By parsing source code into a structured tree representation, it provides both automated linting and style enforcement across entire projects.

The tool distinguishes itself through its speed and deep integration into the development lifecycle. It utilizes parallelized file processing to maximize throughput on large codebases and offers a configuration-driven rule engine that allows developers to customize or suppress specific checks. Beyond standard Python scripts, it provides native support for Jupyter notebooks, Markdown files, and documentation strings, ensuring consistent quality across diverse document formats.

Ruff serves as a versatile utility for project maintenance, offering automated import management and the ability to apply safe, automatic corrections to identified code quality issues. It integrates directly into development environments via the Language Server Protocol, providing real-time diagnostic highlighting, code actions, and rule documentation hovers. These capabilities extend to continuous integration pipelines and pre-commit hooks, enabling automated quality enforcement throughout the development process.

Features

  • Code Formatters - A tool that enforces consistent style across source files by automatically adjusting indentation, spacing, and structure based on predefined rules.
  • Language Server Implementations - The tool provides a standardized language server protocol implementation to enable linting and formatting support across editors including Emacs, Helix, Neovim, PyCharm, VS Code, and Zed.
  • Static Analysis Tools - Source code is parsed into a structured tree representation to enable precise identification of patterns, violations, and potential refactoring opportunities.
  • Static Analysis Engines - Scans source code to identify potential bugs, security vulnerabilities, and style violations.
  • Diagnostic Engines - The tool identifies and underlines potential errors or style violations in real-time as code is written to provide immediate feedback on quality.
  • Editor Feedback Systems - Providing immediate visual cues and automated corrections for code issues directly within the development environment while you are typing.
  • Language Server Integrations - Standardized communication interfaces allow the tool to provide real-time diagnostics and formatting across diverse code editors and development environments.
  • Pre-commit Hooks - Automates code quality checks before version control commits by triggering analysis on save.
  • Automated Code Fixers - The tool applies automatic corrections to resolve identified code quality issues while distinguishing between safe changes that preserve behavior and complex updates requiring manual review.
  • Code Quality Tools - Maintaining consistent coding standards and preventing common programming errors by automatically scanning source code for style violations and bugs.
  • Code Analysis - Listed in the “Code Analysis” section of the Awesome Python awesome list.
  • Code Analysis and Quality - Extremely fast linter and code formatter.
  • Code Formatters - Extremely fast Python linter and formatter.
  • Code Formatting - Extremely fast linter and formatter for Python and Rust code.
  • Development Utilities - High-performance linter and code formatter.
  • Linters And Style Checkers - High-performance linter and formatter written in Rust.
  • Linting Tools - High-performance linter supporting various typing-related rules.
  • Python Packages - Fast Python linting and formatting.
  • Import Organizers - Automatically sorts, cleans, and manages dependency imports to maintain project consistency.
  • CI/CD Pipeline Integrations - Provides native integration for continuous integration platforms to automate code quality checks.
  • Vulnerability Scanners - Identifying potential safety risks and insecure coding practices early in the development cycle to prevent security flaws from entering the codebase.
  • Static Analysis - The tool includes a comprehensive catalog of diagnostic checks for detecting security vulnerabilities, managing imports, enforcing Airflow standards, and facilitating library-specific migrations like NumPy updates.
  • Code Action Providers - The tool provides context-sensitive code corrections and automatic import organization to resolve identified issues and maintain clean source files directly within the editor.
  • Documentation Formatters - The tool formats Python code snippets found inside documentation strings by adjusting indentation and line length to ensure readability while maintaining the integrity of executable test examples.
  • Continuous Integration Pipelines - Integrating automated linting and formatting checks into development pipelines to ensure that only high-quality code reaches production environments.
  • Notebook Tooling - The tool applies linting and formatting rules to Jupyter notebook files natively to ensure consistent code quality across both scripts and interactive documents.
  • Parallel Processing Utilities - Analysis tasks are distributed across multiple CPU cores to maximize throughput when scanning large codebases or complex project directories.
  • Rule Configuration Engines - A centralized settings system allows users to dynamically toggle, customize, and suppress specific linting rules to match project-specific coding standards.
  • Linters & Formatters - The tool allows users to define specific code quality checks by selecting individual rules or categories within a configuration file to match project-specific standards.

Star history

Star history chart for astral-sh/ruffStar history chart for astral-sh/ruff

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does astral-sh/ruff do?

Ruff is a high-performance static analysis and code formatting tool designed for Python. Built in Rust, it functions as a comprehensive engine that scans source code to detect programming errors, security vulnerabilities, and deviations from established coding standards. By parsing source code into a structured tree representation, it provides both automated linting and style enforcement across entire projects.

What are the main features of astral-sh/ruff?

The main features of astral-sh/ruff are: Code Formatters, Language Server Implementations, Static Analysis Tools, Static Analysis Engines, Diagnostic Engines, Editor Feedback Systems, Language Server Integrations, Pre-commit Hooks.

What are some open-source alternatives to astral-sh/ruff?

Open-source alternatives to astral-sh/ruff include: psf/black — This project is an uncompromising, deterministic code formatter for Python. It functions by parsing source code into… pycqa/isort — isort is a Python import sorter and code formatter that organizes import statements into alphabetical groups and… golangci/golangci-lint — This project is a static analysis runner designed to identify bugs, performance bottlenecks, and stylistic… astral-sh/ty — This project is a high-performance static type checker and comprehensive development toolkit for Python. It functions… pycqa/bandit — Bandit is a static analysis security testing tool and vulnerability detection scanner for Python source code. It… pycqa/flake8 — Flake8 is a Python style checker and static analysis tool that identifies programmatic errors and violations of coding…

Open-source alternatives to Ruff

Similar open-source projects, ranked by how many features they share with Ruff.
  • psf/blackpsf avatar

    psf/black

    41,578View on GitHub↗

    This project is an uncompromising, deterministic code formatter for Python. It functions by parsing source code into an abstract syntax tree and regenerating it according to a rigid, opinionated set of style rules. By automating the formatting process, it eliminates manual style debates and configuration overhead, ensuring that code remains consistent across entire projects regardless of the original input. The tool distinguishes itself through its focus on speed and seamless integration into development workflows. It utilizes content-based file caching and parallel processing to maintain hig

    Pythonautopep8codecodeformatter
    View on GitHub↗41,578
  • pycqa/isortPyCQA avatar

    PyCQA/isort

    6,948View on GitHub↗

    isort is a Python import sorter and code formatter that organizes import statements into alphabetical groups and sections. It functions as both a utility to automatically rearrange imports for a consistent layout and as a linting tool to verify if code follows specific ordering rules. The project provides configurable layout settings for indentation, wrapping modes, and section ordering to ensure compliance with project style guides and PEP 8. It allows for the exclusion of specific lines or files through inline comments and docstrings. The tool integrates into development workflows via IDE

    Pythonauto-formattercleanercli
    View on GitHub↗6,948
  • golangci/golangci-lintgolangci avatar

    golangci/golangci-lint

    18,539View on GitHub↗

    This project is a static analysis runner designed to identify bugs, performance bottlenecks, and stylistic inconsistencies within Go codebases. It functions as a comprehensive quality assurance suite that executes multiple analysis tools concurrently to provide a unified diagnostic report. By parsing source code into a structured representation, the tool enforces coding standards, validates import structures, and ensures consistent formatting across entire projects. The tool distinguishes itself through its ability to automate the remediation of identified issues, applying programmatic fixes

    Gocigogolang
    View on GitHub↗18,539
  • astral-sh/tyastral-sh avatar

    astral-sh/ty

    17,287View on GitHub↗

    This project is a high-performance static type checker and comprehensive development toolkit for Python. It functions as a core analysis engine that identifies type inconsistencies and enforces code correctness, while simultaneously providing a language server implementation to deliver real-time diagnostics and intelligence directly within development environments. The tool distinguishes itself through a parallelized execution engine that maximizes performance across large-scale codebases and monorepo structures. It supports gradual type adoption, allowing developers to integrate type checkin

    Python
    View on GitHub↗17,287
  • See all 30 alternatives to Ruff→