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
pre-commit avatar

pre-commit/pre-commit

0
View on GitHub↗
15,057 stars·929 forks·Python·mit·27 viewspre-commit.com↗

Pre Commit

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 framework also employs lazy dependency resolution to minimize setup time, fetching and installing necessary tools only when they are first required.

Beyond standard linting and formatting, the project supports the definition of custom, project-specific hooks to handle unique repository requirements. It provides granular control over execution through pattern-based file filtering, ensuring that validation tools only process relevant code changes. These configurations can be shared across multiple repositories to standardize development workflows and maintain uniform quality assurance standards.

Features

  • Git Hook Managers - Automates the installation and execution of Git hooks to enforce code quality standards before commits are finalized.
  • Automated Code Quality Tools - Enforces project standards by running formatters and security scanners on staged files before they are committed.
  • Development Workflow Automators - Provides a configuration-driven framework for managing and executing automated tasks during the version control commit process.
  • Automated Version Control Workflows - Enforces quality standards by triggering validation tools during version control events.
  • DevOps Tools - Listed in the “DevOps Tools” section of the Awesome Python awesome list.
  • Infrastructure and Cloud - Framework for managing multi-language pre-commit hooks.
  • Code Quality and Analysis - Framework for managing multi-language git hooks.
  • Code Quality Tools - Framework for managing pre-commit hooks.
  • Developer Tools - Framework for managing git hooks.
  • Git Hook Managers - A framework for managing and maintaining multi-language pre-commit hooks.
  • Hook Management Tools - Maintains multi-language hooks through a centralized framework.
  • Workflow Automation - Framework for managing and running multi-language git hooks.
  • Virtual Environment Managers - Creates isolated runtime environments for each tool to prevent dependency conflicts.
  • Isolated Execution Environments - Provides sandboxed runtimes to ensure environment consistency for automated tasks.
  • Project Configuration Managers - Centralizes the management of configuration settings for project-wide task execution.
  • Custom Hook Definitions - Provides mechanisms for defining custom hook instances with specific execution patterns.
  • Team Configuration Standards - Enforces consistent formatting and style across multiple projects using shared configuration files.
  • Plugin-Based Architectures - Allows extending core functionality by loading external or local scripts as modular units.
  • File Filtering Utilities - Applies regular expression matching to staged file paths to ensure tools only process relevant changes.
  • Declarative Configuration Managers - Uses a centralized manifest file to define execution order and filtering rules for automated tasks.

Star history

Star history chart for pre-commit/pre-commitStar history chart for pre-commit/pre-commit

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

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 pre-commit/pre-commit do?

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.

What are the main features of pre-commit/pre-commit?

The main features of pre-commit/pre-commit are: Git Hook Managers, Automated Code Quality Tools, Development Workflow Automators, Automated Version Control Workflows, DevOps Tools, Infrastructure and Cloud, Code Quality and Analysis, Code Quality Tools.

What are some open-source alternatives to pre-commit/pre-commit?

Open-source alternatives to pre-commit/pre-commit include: typicode/husky — Husky is a Git hook manager that automates the installation and execution of version control lifecycle events within a… j178/prek — Prek is a Git hook manager written in Rust that runs configured hooks as a single binary without requiring Python or… pdm-project/pdm — PDM is a Python package manager, dependency resolver, and build tool designed to create reproducible environments. It… boto/boto3 — Boto3 is the AWS SDK for Python, providing a programmatic interface for managing and automating AWS cloud… saltstack/salt — Salt is an infrastructure configuration management tool and orchestration framework designed for large-scale system… nrwl/nx — This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It…

Open-source alternatives to Pre Commit

Similar open-source projects, ranked by how many features they share with Pre Commit.
  • 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

    JavaScriptcommitgithooks
    View on GitHub↗35,156
  • 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

    Rustgitgit-hookspre-commit
    View on GitHub↗6,297
  • pdm-project/pdmpdm-project avatar

    pdm-project/pdm

    8,647View on GitHub↗

    PDM is a Python package manager, dependency resolver, and build tool designed to create reproducible environments. It functions as a runtime manager that installs and switches between different versions of the Python interpreter using standalone builds, while managing isolated virtual environments to prevent version conflicts between projects. The tool distinguishes itself through the use of cross-platform lockfiles and a plugin-based extension architecture, allowing users to add new capabilities via external distributions. It provides a centralized package caching system and a parallel insta

    Python
    View on GitHub↗8,647
  • boto/boto3boto avatar

    boto/boto3

    9,834View on GitHub↗

    Boto3 is the AWS SDK for Python, providing a programmatic interface for managing and automating AWS cloud infrastructure and services. It serves as a cloud management API client and resource manager for provisioning, configuring, and scaling virtual servers, databases, and storage. The library enables the implementation of infrastructure-as-code through declarative templates and scripts, allowing for the deployment of identical resource stacks across multiple accounts and geographic regions. It also provides a framework for coordinating distributed workflows, serverless functions, and contain

    Pythonawsaws-sdkcloud
    View on GitHub↗9,834
See all 30 alternatives to Pre Commit→