Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. prek

prek

MITRustv0.5.7

A fast, dependency-free Git hook manager written in Rust, designed as a drop-in alternative to pre-commit.

Visit WebsiteGitHubGitHub
8.7k stars250 forks0 contributors

What is prek?

prek is a Git hook manager written in Rust, designed as a drop-in alternative to the popular pre-commit framework. It solves the problem of managing and running Git hooks for code quality checks, formatting, and linting by providing a faster, dependency-free tool that maintains full compatibility with existing configurations.

Target Audience

Developers and teams already using pre-commit who want improved performance, or those new to Git hook management looking for a modern, efficient tool. It's particularly valuable for projects in monorepos or those using multiple programming languages.

Value Proposition

Developers choose prek for its significant performance improvements, dependency-free single binary, and enhanced user experience features like parallel hook execution and built-in monorepo support, while maintaining full compatibility with their existing pre-commit workflows.

Overview

⚡ A fast Git hook manager written in Rust, designed as a drop-in alternative to pre-commit, reimagined.

Use Cases

Best For

  • Teams migrating from pre-commit who want better performance
  • Managing Git hooks in monorepo projects
  • Running code quality checks across multiple programming languages
  • Reducing disk space usage from hook environments
  • Parallel execution of Git hooks to speed up CI/CD pipelines
  • Projects wanting dependency-free hook management without Python runtime

Not Ideal For

  • Projects using hooks in languages not yet fully supported by prek, such as some esoteric or less common toolchains
  • Teams that rely heavily on pre-commit's extensive plugin ecosystem and community-contributed hooks
  • Environments with strict Python toolchain management where introducing a Rust-based binary adds complexity

Pros & Cons

Pros

Blazing Fast Performance

Benchmarks show it's multiple times faster than pre-commit with parallel hook execution and efficient disk usage, reducing CI/CD times significantly.

Dependency-Free Binary

Prek is a single binary with no external runtime requirements, eliminating Python installation hassles and simplifying deployment.

Seamless Migration Path

It maintains full compatibility with existing pre-commit configurations, allowing teams to switch without rewriting hook definitions.

Built-in Monorepo Support

Workspace mode handles multiple projects efficiently, a feature long-requested in pre-commit, simplifying hook management across repositories.

Cons

Incomplete Language Support

The README admits not all languages have full drop-in parity yet, which can block adoption in multi-language projects relying on niche hooks.

Early-Stage Risks

As a newer tool, prek may have undiscovered bugs, fewer stability guarantees, and less extensive testing compared to the mature pre-commit.

Ecosystem Gap

It lacks the vast community of third-party hooks and integrations available in pre-commit, limiting customization options for advanced use cases.

Open Source Alternative To

prek is an open-source alternative to the following products:

pre-commit
pre-commit

pre-commit is a framework for managing and maintaining multi-language pre-commit hooks, helping developers identify issues before code submission by running checks on git commits.

Frequently Asked Questions

Quick Stats

Stars8,654
Forks250
Contributors0
Open Issues20
Last commit1 day ago
CreatedSince 2024

Tags

#developer-tools#pre-commit#cli-tool#git#code-quality#monorepo#rust#git-hooks#uv#performance

Built With

R
Rust

Links & Resources

Website

Included in

Rust56.6k
Auto-fetched 1 day ago

Related Projects

goosegoose

an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM

Stars55,520
Forks6,416
Last commit2 days ago
justjust

🤖 Just a command runner

Stars36,389
Forks863
Last commit5 days ago
misemise

dev tools, env vars, task runner

Stars35,250
Forks1,493
Last commit1 day ago
jjjj

A Git-compatible VCS that is both simple and powerful

Stars32,186
Forks1,258
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub