-
Notifications
You must be signed in to change notification settings - Fork 43
Closed
Labels
type/taskBody of work related to an epicBody of work related to an epic
Description
Component
Not Sure
Task Description
What
Move from pre-commit to prek.
Features
- π A single binary with no dependencies, does not require Python or any other runtime.
- β‘ Faster than
pre-commitand more efficient in disk space usage. - π Fully compatible with the original pre-commit configurations and hooks.
- ποΈ Built-in support for monorepos (i.e. workspace mode).
- π Integration with
uvfor managing Python virtual environments and dependencies. - π οΈ Improved toolchain installations for Python, Node.js, Bun, Go, Rust and Ruby, shared between hooks.
- π¦ Built-in Rust-native implementation of some common hooks.
Who is using prek?
prek is pretty new, but it is already being used or recommend by some projects and organizations:
- apache/airflow
- python/cpython
- pdm-project/pdm
- fastapi/fastapi
- fastapi/typer
- fastapi/asyncer
- astral-sh/ruff
- astral-sh/ty
- home-assistant/core
- DetachHead/basedpyright
- OpenLineage/OpenLineage
- authlib/authlib
- django/djangoproject.com
- Future-House/paper-qa
- requests-cache/requests-cache
- Goldziher/kreuzberg
- python-attrs/attrs
- jlowin/fastmcp
- apache/iceberg-python
- jcrist/msgspec
- python-humanize/humanize
- MoonshotAI/kimi-cli
- simple-icons/simple-icons
- ast-grep/ast-grep
- commitizen-tools/commitizen
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
type/taskBody of work related to an epicBody of work related to an epic