Codync
A free, open-source 1:1 alternative to Grok Bot and Muse. Message Claude Code, Codex, Cursor and 40+ coding agents as persistent bots from your iPhone, Mac or Linux desktop. Group chats, threads, appr
Build webhook delivery into your TypeScript application.
Developer toolsGitHub @pplytasOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗You publish typed events. Good Webhooks stores them in your PostgreSQL database, and a worker you run delivers signed Standard Webhooks requests, retries failures, and records every attempt. Receivers verify a request with one function. Endpoint management works standalone, through the Better Auth plugin, or with your own sender.
Stable API. From
0.1.0the public API and upgrade path follow the stability policy. Throughput beyond the measured profile is not yet verified.
npm install good-webhooks pg zod
Requires Node.js 24 or later. Built-in delivery and standalone management need PostgreSQL 16, 17, or 18. Better Auth management uses your existing Better Auth database adapter. See installation for each setup's dependencies and the compatibility policy for tested versions.
| You want | Start with |
|---|---|
| Everything on PostgreSQL | Quick start |
| To see what a hand-rolled sender gets wrong | Tutorial |
| Signed-in users managing their own endpoints | Better Auth plugin |
| Better Auth endpoints with built-in delivery | Add delivery |
| Endpoint management for your own sender | Custom senders |
| Only receiving webhooks | Receive webhooks |
| To compare with Svix, Outpost, Convoy, or pg-boss | Compared with alternatives |
The package README walks through publishing, running a worker, and verifying on the receiving side.
playground.good-webhooks.dev is a public app built on the published package. Sign in with GitHub, add an HTTPS endpoint, and receive signed events within minutes. Its source is a complete deployment and the library's dogfood.
Two interactive examples show the full path from a business action to a verified webhook and receiver outcome:
Each example has its own npm lockfile, PostgreSQL setup, browser UI, receiver, and separate worker process. Both install [email protected] from npm and can run together. Follow the examples guide to get started.
| Directory | Contents |
|---|---|
packages/good-webhooks | Public package source, examples, migrations, and tests |
apps/docs | Fumadocs site behind good-webhooks.dev |
examples | Complete applications that install the published npm package |
docs | Engineering plans and architecture decisions |
Use Node.js 24 and the repository's pinned pnpm version, 12.10.1. If Corepack is available, enable its shims with corepack enable; otherwise install that pnpm version using the pnpm installation instructions.
pnpm install --frozen-lockfile
pnpm dev
Open http://localhost:3000 for the documentation site. To build, check links, and run the production build:
pnpm build
pnpm --filter @good-webhooks/docs check:links
pnpm --filter @good-webhooks/docs preview
Run pnpm check, pnpm format:check, and pnpm test:unit for checks without a PostgreSQL server. The contribution guide covers integration tests, adapter checks, and documentation verification.
The standalone demo demonstrates rollback, signed delivery, retry, replay, and durable receiver deduplication. Start a disposable database:
docker run --name good-webhooks-demo \
-e POSTGRES_PASSWORD=webhooks_dev_only \
-e POSTGRES_DB=webhooks \
-p 127.0.0.1:55439:5432 \
-d postgres:16
Wait until PostgreSQL accepts connections, then apply the migrations once:
export DATABASE_URL='postgres://postgres:[email protected]:55439/webhooks'
psql "$DATABASE_URL" --single-transaction -v ON_ERROR_STOP=1 -f packages/good-webhooks/migrations/001-initial.sql
psql "$DATABASE_URL" --single-transaction -v ON_ERROR_STOP=1 -f packages/good-webhooks/examples/basic/receiver.sql
pnpm example
The demo leaves event, attempt, and receiver history for inspection. Do not run the integration tests against this database; those tests reset their database tables.
pnpm --dir packages/good-webhooks pack
In your application, install the resulting archive using npm or your preferred package manager:
npm install /absolute/path/to/packages/good-webhooks/good-webhooks-0.6.0.tgz
pnpm test:package verifies the archive with fresh npm consumers, both with and without Better Auth, including the published declarations and SQL exports. Registry publication is a separate release step.
Read CONTRIBUTING.md before proposing changes. Maintainers use the release guide to verify a candidate before publishing. Report vulnerabilities through the security policy. Licensed under MIT.