diff --git a/docs/precommit.md b/docs/precommit.md
index 02ec60830..2becf38e4 100644
--- a/docs/precommit.md
+++ b/docs/precommit.md
@@ -164,7 +164,70 @@ Add or remove file extensions to suit your project. Note that regardless of whic
To read about how git-format-staged works see [Automatic Code Formatting for Partially-Staged Files](https://www.olioapps.com/blog/automatic-code-formatting/).
-## Option 5. Shell script
+## Option 5. [Lefthook](https://lefthook.dev/)
+
+**Use Case:** A fast, polyglot Git hooks manager with built-in parallelization. Useful if you want a single tool that can run Prettier alongside hooks for other languages in the same repo.
+
+Add a Prettier job to a `lefthook.yml` file at the repo root:
+
+```yaml title="lefthook.yml"
+pre-commit:
+ jobs:
+ - name: prettier
+ run: npx prettier --ignore-unknown --write '{staged_files}'
+ stage_fixed: true
+```
+
+`stage_fixed: true` re-stages files that Prettier modified so the formatted version is what gets committed.
+
+Then install Lefthook and run `lefthook install` so Lefthook wires up the configured jobs into `.git/hooks`:
+
+
+
+
+```bash
+npm install --save-dev lefthook
+npx lefthook install
+```
+
+
+
+
+```bash
+yarn add --dev lefthook
+yarn lefthook install
+```
+
+
+
+
+```bash
+pnpm add --save-dev lefthook
+pnpm lefthook install
+```
+
+
+
+
+```bash
+bun add --dev lefthook
+bunx lefthook install
+```
+
+
+
+
+```bash
+deno install --dev lefthook
+deno x lefthook install
+```
+
+
+
+
+Re-run `lefthook install` whenever you change `lefthook.yml`. Read more at the [Lefthook](https://lefthook.dev/) website.
+
+## Option 6. Shell script
Alternately you can save this script as `.git/hooks/pre-commit` and give it execute permission:
diff --git a/website/versioned_docs/version-stable/precommit.md b/website/versioned_docs/version-stable/precommit.md
index 02ec60830..2becf38e4 100644
--- a/website/versioned_docs/version-stable/precommit.md
+++ b/website/versioned_docs/version-stable/precommit.md
@@ -164,7 +164,70 @@ Add or remove file extensions to suit your project. Note that regardless of whic
To read about how git-format-staged works see [Automatic Code Formatting for Partially-Staged Files](https://www.olioapps.com/blog/automatic-code-formatting/).
-## Option 5. Shell script
+## Option 5. [Lefthook](https://lefthook.dev/)
+
+**Use Case:** A fast, polyglot Git hooks manager with built-in parallelization. Useful if you want a single tool that can run Prettier alongside hooks for other languages in the same repo.
+
+Add a Prettier job to a `lefthook.yml` file at the repo root:
+
+```yaml title="lefthook.yml"
+pre-commit:
+ jobs:
+ - name: prettier
+ run: npx prettier --ignore-unknown --write '{staged_files}'
+ stage_fixed: true
+```
+
+`stage_fixed: true` re-stages files that Prettier modified so the formatted version is what gets committed.
+
+Then install Lefthook and run `lefthook install` so Lefthook wires up the configured jobs into `.git/hooks`:
+
+
+
+
+```bash
+npm install --save-dev lefthook
+npx lefthook install
+```
+
+
+
+
+```bash
+yarn add --dev lefthook
+yarn lefthook install
+```
+
+
+
+
+```bash
+pnpm add --save-dev lefthook
+pnpm lefthook install
+```
+
+
+
+
+```bash
+bun add --dev lefthook
+bunx lefthook install
+```
+
+
+
+
+```bash
+deno install --dev lefthook
+deno x lefthook install
+```
+
+
+
+
+Re-run `lefthook install` whenever you change `lefthook.yml`. Read more at the [Lefthook](https://lefthook.dev/) website.
+
+## Option 6. Shell script
Alternately you can save this script as `.git/hooks/pre-commit` and give it execute permission: