awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

Automated Code Linting and Formatting

Ranking updated Jun 30, 2026

For a tool for automated code linting and formatting, the strongest matches are pre-commit/pre-commit (Pre-commit is a framework that manages git pre-commit hooks), lint-staged/lint-staged (Lint-staged is a command-line utility that runs your configured) and j178/prek (Prek is a Rust-based Git hook manager that runs). evilmartians/lefthook and typicode/husky round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

Tools that automatically analyze, check, and reformat source code to maintain consistent project style standards.

Automated Code Linting and Formatting

Find the best repos with AI.We'll search the best matching repositories with AI.
  • pre-commit/pre-commitpre-commit avatar

    pre-commit/pre-commit

    15,057View on GitHub↗

    Pre-commit is a framework for managing and executing automated tasks during the version control commit process. It functions as a configuration-driven utility that enforces project standards by running linters, formatters, and security scanners on staged files before they are committed to a repository. The system uses a centralized manifest to orchestrate these tasks, ensuring consistent developer tooling across teams. It distinguishes itself by provisioning isolated environments for each tool, which prevents dependency conflicts and ensures that all required versions are present. The framewo

    Pre-commit is a framework that manages git pre-commit hooks with declarative configuration, multi-language tool support, and a large community hook repository, making it the definitive tool for enforcing code quality before commits.

    PythonGit Hook Managers
    View on GitHub↗15,057
  • lint-staged/lint-stagedlint-staged avatar

    lint-staged/lint-staged

    14,460View on GitHub↗

    Lint-staged is a command-line utility designed to automate code quality checks and formatting tasks within a Git repository. It functions as a pre-commit hook runner that executes defined operations exclusively on files currently staged for commit, ensuring that only code meeting project standards is permanently saved. The tool distinguishes itself by providing granular control over the development workflow through file filtering and task orchestration. It uses glob-pattern matching to isolate specific file types and executes sequences of shell commands in a strict order. To maintain reposito

    Lint-staged is a command-line utility that runs your configured linters and formatters exclusively on files staged for commit, giving you granular control over code quality as part of a pre-commit workflow; it supports any language through shell commands and includes auto-fix, though it depends on a separate hook manager like husky to set up the actual git hook.

    JavaScriptGit Hook ManagersPre-commit Hooks
    View on GitHub↗14,460
  • j178/prekj178 avatar

    j178/prek

    6,297View on GitHub↗

    Prek is a Git hook manager written in Rust that runs configured hooks as a single binary without requiring Python or other external runtimes. It executes hooks faster than standard tools through parallel processing and bundled Rust implementations, and includes a built-in hook repository that enables fully offline operation without network access or environment setup. The tool supports both TOML and YAML configuration formats with identical semantics, and can run hooks from existing pre-commit configuration files without modification. Prek distinguishes itself through workspace-aware monorepo

    Prek is a Rust-based Git hook manager that runs linters and formatters as pre-commit hooks with parallel execution and offline support, matching the intent with built-in hook repository, declarative TOML/YAML config, and compatibility with existing pre-commit setups.

    RustGit Hook ManagersGit HooksPre-Commit Hook Runners
    View on GitHub↗6,297
  • evilmartians/lefthookevilmartians avatar

    evilmartians/lefthook

    7,598View on GitHub↗

    Lefthook is a Git hook manager and workflow automation tool designed to execute user-defined scripts during version control events. It automates the execution of linters, tests, and formatters to validate changes and maintain code quality before commits or pushes. The project distinguishes itself through a parallel execution model that runs multiple shell commands concurrently to reduce latency. It supports complex configuration management, including the ability to merge global, remote, and local settings and synchronize configurations from external repositories to standardize development env

    Lefthook is a dedicated Git hook manager that automates running linters, formatters, and tests during commits or pushes — it supports declarative configuration, parallel execution, and custom scripts, giving you exactly the multi-language pre-commit enforcement you're looking for.

    GoGit Hook ManagersPre-commit Hooks
    View on GitHub↗7,598
  • typicode/huskytypicode avatar

    typicode/husky

    35,156View on GitHub↗

    Husky is a Git hook manager that automates the installation and execution of version control lifecycle events within a project repository. It functions by redirecting standard version control event triggers to a centralized configuration directory, allowing teams to standardize development workflows and enforce code quality without requiring manual setup on every machine. The tool enables custom workflow automation by triggering shell scripts during operations such as committing or pushing code. It distinguishes itself by integrating directly into package manager lifecycles, ensuring that aut

    Husky is a Git hook manager that lets you run arbitrary scripts—including linters and formatters—on pre-commit events, which fits your need for automating code quality checks, though it does not include a built-in community hook repository or auto-fix functionality.

    JavaScriptGit Hook Managers
    View on GitHub↗35,156
  • arkweid/lefthookArkweid avatar

    Arkweid/lefthook

    8,434View on GitHub↗

    Lefthook is a Git hook manager and workflow automator that uses a configuration-driven approach to manage scripts triggered by version control events. It functions as a parallel task runner, executing multiple scripts simultaneously to reduce the time required for pre-commit or pre-push checks. The project provides a containerized hook runner to ensure consistent dependencies and toolsets across different developer machines. It also supports monorepo orchestration by executing scripts within specific subdirectories and managing complex project structures. The system includes capabilities for

    Lefthook is a declarative Git hook manager and parallel task runner that can orchestrate linters and formatters before commits, fitting the pre-commit hook manager category, though it lacks a built-in community hook repository.

    GoGit Hook Managers
    View on GitHub↗8,434
  • okonet/lint-stagedokonet avatar

    okonet/lint-staged

    14,669View on GitHub↗

    lint-staged is a git pre-commit task runner that executes linters and formatters specifically on files staged in git. It functions as a staged file filter and a monorepo task orchestrator, identifying the correct configuration and working directory for files across multiple packages in a repository. The system automatically adds formatting changes back to the git stage after a successful task run. It uses a mechanism to match files in the git index against glob patterns to determine which tasks to execute and can automatically update git indices after formatting. The project covers sequentia

    lint-staged runs linters and formatters specifically on files staged in git, integrating as a pre-commit hook to enforce code quality before each commit—it fits your search for an auto-fix and multi-language orchestrator, though it lacks a built-in community hook repository.

    JavaScriptPre-Commit Quality Hooks
    View on GitHub↗14,669
  • super-linter/super-lintersuper-linter avatar

    super-linter/super-linter

    10,492View on GitHub↗

    Combination of multiple linters to run as a GitHub Action or standalone

    super-linter combines dozens of linters and formatters into a single runner that can be invoked as a GitHub Action or standalone script, so it fits the need for an automated pre-commit / pre-run hook that enforces code quality across multiple languages.

    ShellContainerized LintersCI/CD Pipeline IntegrationsCross-Language Linting Management
    View on GitHub↗10,492
  • diffplug/spotlessdiffplug avatar

    diffplug/spotless

    5,527View on GitHub↗

    Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various programming languages within a single build pipeline. It functions as a coordinator for multiple third-party formatters, a code style linting tool, and a system for inserting and updating standardized license headers. The project distinguishes itself through git-integrated style enforcement, using pre-push hooks and git references to apply formatting only to modified files or lines. It supports shared build configurations, allowing formatting rules to be distributed and loaded acr

    Spotless is a multi-language formatting orchestrator with git hook integration that automatically enforces code style on modified files, fitting the need for a pre-commit hook tool for formatting, though it focuses on formatting rather than general linting and lacks a community hook repository for arbitrary linters.

    JavaFormatting PluginsMulti-Language Code FormattersMulti-Language Formatters
    View on GitHub↗5,527
  • brainmaestro/composer-git-hooksBrainMaestro avatar

    BrainMaestro/composer-git-hooks

    1,086View on GitHub↗

    This project is a dependency manager plugin that automates the management and synchronization of version control hooks. By integrating directly into project dependency configuration files, it ensures that automated tasks and validation rules are consistently applied across local development environments. The tool distinguishes itself by enabling configuration-driven task orchestration, where version control triggers are mapped to custom command sequences. It supports global configuration inheritance, allowing developers to enforce uniform workflows and validation standards across multiple rep

    This Composer package lets you manage git hooks declaratively in your composer.json, making it a valid pre-commit hook manager for PHP projects, but it is limited to the PHP/Composer ecosystem and doesn’t orchestrate multi-language linters or formatters.

    PHPGit Hook Managers
    View on GitHub↗1,086
  • toplenboren/simple-git-hookstoplenboren avatar

    toplenboren/simple-git-hooks

    1,669View on GitHub↗

    Simple-git-hooks is a utility for managing version control hooks through project configuration files. It automates the installation and execution of custom tasks, ensuring that specific commands run consistently across local development environments whenever version control operations occur. The tool functions by injecting managed scripts into the repository directory structure, replacing existing hooks to maintain uniform development standards. It supports environment-specific configurations, allowing developers to define custom initialization scripts to ensure necessary binaries and system

    simple-git-hooks is a lightweight git hooks manager that lets you define and run custom scripts before commits, which directly supports the core need of enforcing code quality via pre-commit hooks, but it lacks built-in linter/formatter orchestration and multi-language auto-fix, so it is a narrower answer than a dedicated linter-focused tool.

    JavaScriptGit Hook Managers
    View on GitHub↗1,669
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
pre-commit/pre-commit15.1KPythonmitDec 22, 2025
lint-staged/lint-staged14.5KJavaScriptmitFeb 7, 2026
j178/prek6.3KRustmitFeb 19, 2026
evilmartians/lefthook7.6KGomitFeb 16, 2026
typicode/husky35.2KJavaScriptMITMar 19, 2026
arkweid/lefthook8.4KGoMITJun 24, 2026
okonet/lint-staged14.7KJavaScriptMITJun 20, 2026
super-linter/super-linter10.5KShellMITJun 23, 2026
diffplug/spotless5.5KJavaApache-2.0Jun 21, 2026
brainmaestro/composer-git-hooks1.1KPHPMITJun 22, 2024

Related searches

  • Linters, formatters and type checkers
  • a fast Python linter and code formatter
  • an opinionated code formatter that supports many languages
  • a pluggable linter for catching bugs in JavaScript
  • a git hooks manager for running checks before commits
  • a Terraform policy and compliance checker
  • an open source tool for automated code review
  • a Dockerfile linter