hook-local
v0.3.0
Published
Local-first webhook debugger: receive, inspect, verify HMAC signatures, and replay - payloads never leave your machine
Maintainers
Readme
hook-local
The local-first webhook debugger: receive, inspect, verify, and replay webhooks without your payloads ever leaving your machine.
npx hook-localOpen http://127.0.0.1:8788, then point any webhook at your inbox or test it:
curl -X POST http://127.0.0.1:8788/inbox/default \
-H "Content-Type: application/json" -d '{"hello":"world"}'- Receive: raw body preserved byte-for-byte (binary safe), stored in a local SQLite file
- Inspect: headers, raw body, parsed JSON, search, multiple inboxes
- Verify: HMAC-SHA256 over the exact raw bytes, timing-safe. Presets for GitHub, Stripe (
t=/v1=), Slack (v0=), and Shopify - Search: free text, or
field=value(e.g.type=payment_intent.succeeded) to match a JSON field exactly - Replay (Pro): edit the body, re-sign it with a stored secret, send with retry rules
- Simulate (Pro): answer with 500s or delays to exercise the sender's retry logic
Receiving, inspecting, and verifying are free forever. Pro features come with a 30-day trial per machine, then require a license key (Settings → License). Activate once and every project folder on that machine is unlocked.
The UI is available in English and Korean. Data stays on your machine: the server binds to 127.0.0.1, secrets are encrypted at rest, and there is no telemetry.
- Website: https://kevin-hyochang.github.io/hook-local-site/
- Env:
HOOK_PORT(default 8788),HOOK_DB(SQLite path, default./hook-local.db),HOOK_HOME(trial clock + license key, default~/.hook-local)
