30 open-source projects similar to arkweid/lefthook, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Overcommit is a Git hook manager and workflow automation system used to configure, deploy, and orchestrate scripts that enforce coding standards and project workflows. It acts as a management layer for distributed hook configuration, applying global templates across multiple repositories to ensure consistent validation rules. The system functions as a parallel task runner, executing multiple validation scripts concurrently across CPU cores to reduce the time spent during pre-commit checks. It distinguishes itself through signature-based integrity verification to detect unauthorized changes to
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
Moon is a monorepo build system and task runner designed to orchestrate complex projects with multiple packages. It functions as a dependency graph orchestrator that executes build targets in topological order and utilizes input hashing to cache results and skip redundant work. The project features a polyglot toolchain manager that automates the installation and versioning of language runtimes and CLI tools to ensure environment consistency. It also includes a plugin framework based on WebAssembly, allowing developers to extend build logic and toolchain behavior using any supported language.
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
GAM is a command-line tool for administering Google Workspace and Cloud Identity. It translates command-line arguments into structured API calls, enabling administrators to manage users, groups, organizational units, and domain settings across a Google Workspace environment. The tool handles authentication through OAuth2 flows, service accounts, and workload identity federation, and supports multi-tenant configurations for managing multiple domains or cloud projects from a single installation. GAM distinguishes itself through its batch processing and automation capabilities. It can process la
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
Sbt is a JVM build tool and dependency management system designed for Scala and Java. It functions as a multi-project build orchestrator that manages the compilation of source code, resolves external libraries from remote repositories, and packages binaries for distribution. The project is distinguished by its interactive build system, which provides a read-eval-print loop for real-time state inspection and task execution. It utilizes a dependency-graph based execution model to process tasks and maintains a type-safe key-value store for dynamic build configuration. Its capabilities cover JVM
Overcommit is a Git hook manager and pre-commit validation framework designed to automate the execution of scripts and checks during various Git events. It serves as a workflow automation tool that ensures code quality and project standards are met before changes are committed or pushed to a remote repository. The system distinguishes itself through a comprehensive YAML-based configuration that allows for detailed hook behavior control, including file execution filtering, conditional skipping, and the management of hook dependencies. It provides specialized roles such as a commit message vali
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
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
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
Guard is a command-line file watcher that monitors the filesystem from the terminal and automatically executes user-defined tasks when files are modified, added, or deleted. It functions as a file change watcher and test runner that triggers test suite execution immediately when source or spec files are saved, providing instant feedback during development. The tool is configured through a Ruby-based domain-specific language in a Guardfile, and it can send visual desktop notifications when watched file actions complete or fail. The project distinguishes itself through a plugin-based extension
This project is a parallel test runner and shell command executor designed to reduce total runtime by executing test suites across multiple CPU cores. It functions as a test suite load balancer and a CI test process manager that coordinates global setup, teardown, and exit codes for continuous integration pipelines. The tool acts as a test database orchestrator by creating and managing unique database instances mapped to parallel processes, which prevents data collisions. It distributes tests into balanced groups based on file size or recorded runtimes to optimize execution time and avoid bot
Mage is a build automation tool and workflow orchestrator that uses Go functions to define executable build targets instead of a custom domain-specific language. It functions as a compiled build system and task runner, mapping exported Go functions to command-line targets. The tool distinguishes itself by compiling build definitions into static binaries for distribution to dependency-free machines. It utilizes hashed binary caching to avoid redundant compilations and supports the packaging of the runtime and defined tasks into a single standalone executable. The platform covers dependency ma
ZenML is an extensible machine learning orchestration framework designed to manage the end-to-end lifecycle of data pipelines and AI agent workflows. It functions as a durable orchestrator that executes machine learning tasks as directed acyclic graphs, ensuring that every step is containerized for consistent performance across local, cloud, and hybrid infrastructure. By decoupling pipeline code from underlying compute and storage backends, the platform allows developers to define infrastructure-agnostic stacks that remain portable across diverse environments. The project distinguishes itself
This project is a comprehensive command-line reference and toolkit designed for Linux system administration and network security assessment. It provides a collection of technical snippets and operational guides focused on managing remote environments, orchestrating shell sessions, and executing administrative tasks through native terminal utilities. The repository distinguishes itself by offering specialized techniques for stealthy operations and infrastructure manipulation. It covers methods for establishing encrypted tunnels to bypass firewalls, obfuscating process identities and command hi
GrumPHP is a Git commit validator and PHP code quality orchestrator. It functions as a Git hook manager that automates the installation and execution of script triggers to enforce code quality standards within PHP projects. The tool prevents non-compliant code from being committed by running a suite of validation and linting tasks during the Git workflow. It integrates automated quality checks directly into the local development environment to maintain project standards. The system manages pre-commit testing workflows by executing quality tests and automating Git hooks. It uses a task-based
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
gitmoji-cli is a command line interface and Git extension used to generate structured commit messages with standardized emojis. It functions as a commit message generator that allows users to visually categorize code changes and track modifications through a predefined library of visual icons. The tool provides an interactive workflow that replaces raw text entry with guided prompts for selecting categories, scopes, and descriptions. It includes a searchable emoji library with keyword-based indexing and local caching to facilitate the selection of accurate visual markers. The project support
s5cmd is a command line interface for high-performance data transfers and management tasks across S3 compatible storage services. It functions as a parallel data transfer tool and bucket synchronization utility, designed to accelerate the uploading and downloading of large volumes of files using concurrent workers. The tool acts as a batch command processor capable of executing thousands of object management operations in parallel from command files or piped streams. It also serves as an S3 Select query client, allowing the execution of SQL expressions against stored JSON records to retrieve
gitflow-avh is a command line tool and automation framework designed to implement the Gitflow branching model. It provides a set of extensions that automate the creation, merging, and management of feature, release, and hotfix branches to maintain a standardized version control workflow. The tool manages the complete lifecycle of development, from initializing a repository with predefined branch structures and naming prefixes to preparing stable software versions for production. It includes specialized workflows for urgent production hotfixing and the creation of persistent branches for long-
Pants is a monorepo build system designed to manage multi-language software projects within a single repository. It functions as a polyglot task runner and distributed build orchestrator, providing a unified interface for executing compilers, linters, and test runners across different programming languages. The system is distinguished by a dependency analysis engine that uses static source code analysis to model software dependencies, removing the need for manual build metadata files. It ensures reproducible builds through hermetic isolation and protects the software supply chain using depend
Wireit is a build system orchestrator and npm script task runner that manages complex dependencies between scripts. It functions as a development workflow automator by tracking input files and dependencies to skip redundant executions and optimize total build time. The project features a content-addressable build cache that saves generated files to bypass expensive computations. It includes a file watcher that monitors project changes and automatically triggers only the affected scripts within a dependency graph. The tool covers task orchestration through parallel script execution, backgroun
This repository is a comprehensive collection of instructional guides and practical examples for Python development, focusing on machine learning, data science, and web scraping. It provides implementations for neural networks, reinforcement learning algorithms, and deep learning architectures using PyTorch, alongside detailed manuals for scientific computing and data visualization. The project distinguishes itself by offering specialized tutorials on concurrent programming to optimize CPU performance and guides for setting up Linux development environments. It covers the implementation of ad
Bacon is a background job runner and text-based user interface test dashboard designed for tracking code health and isolating failing tests. It functions as a developer workflow automator and file system watcher that triggers shell commands and verification tasks automatically when source files are modified. The tool allows for the definition of custom checkers and keyboard shortcuts to accelerate the iteration and debugging process. It provides a focused display for monitoring project health by tracking compilation errors and restricting active jobs to only those tests that have failed. The
k3sup is a command-line tool that installs and manages lightweight Kubernetes clusters entirely over SSH, without requiring any pre-installed software on the target machines. It bootstraps clusters on remote hosts using a single statically-linked binary, then provides immediate kubectl access by fetching and merging the cluster's admin credentials into the local configuration. The tool supports plan-driven cluster topology, allowing users to define node roles and configuration in a YAML file for automated multi-node deployment. The tool distinguishes itself by enabling parallel execution of i
PromiseKit is a future-based concurrency framework and promise library for Swift and Objective-C. It functions as an asynchronous workflow coordinator, representing the eventual result of an operation to simplify concurrency logic and replace nested callback structures. The framework enables the coordination of both sequential and parallel asynchronous tasks. It provides a structured pipeline for chaining operations, allowing the results of one task to be passed into the next and facilitating the execution of multiple operations simultaneously. The library includes a state-machine based reso
Async is a JavaScript asynchronous flow library designed to manage the execution and coordination of asynchronous tasks in Node.js and the browser. It provides functional utilities to wrap, process, and orchestrate complex asynchronous workflows. The library distinguishes itself through a comprehensive task orchestrator that handles dependency graphs to resolve circular references and manages concurrent task queues. It includes a unification bridge that allows callback-style and promise-based functions to operate within the same execution interface. The project covers several primary capabil
This project is a comprehensive collection of pre-commit hooks designed to automate code linting, style enforcement, and file validation before changes are committed to version control. It provides a suite of ready-to-use scripts that serve as quality guards, including static analysis hooks, configuration file validators, and tools for maintaining version control integrity. The collection distinguishes itself by offering specialized guards for repository health and security. This includes detection of leaked credentials and private keys, prevention of large file commits, and enforcement of br
conc is a Go concurrency library and structured concurrency framework providing primitives for managing parallel tasks, mapping slices, and collecting results. It implements a system for spawning scoped tasks to ensure all child processes complete before their parent exits. The library includes a goroutine pool manager to limit active concurrent processes and a panic-safe task runner that catches panics in goroutines and propagates stack traces to the parent. It also provides a concurrent map-reduce tool for transforming data slices and processing streams in parallel while maintaining the ori