Hey everyone! I just finished Sparrow, an open-source (MIT) webhook delivery platform built with Go. You send it events, and it fans them out to your customers’ endpoints with retries, signing and full delivery history. It’s a self-hosted alternative to Svix, Hookdeck and Convoy.
Go bits:
• One binary with the dashboard embedded. Postgres is the only dependency: River runs the job queue in the same database, so there’s no Redis or broker
• The OpenAPI 3.1 spec is generated from the Go handlers with huma on chi, and served at /docs
• Per-subscription Go templates reshape payloads for each receiver (Slack, Discord, PagerDuty and others ship as recipes)
• Standard Webhooks signing (HMAC-SHA256 and optional Ed25519), secrets envelope-encrypted at rest, SSRF checks on every outbound request
• OpenTelemetry traces through slog, plus Prometheus metrics
• A CLI with sparrow listen to receive deliveries locally, and an MCP server
Try it: curl -O https://raw.githubusercontent.com/sarathsp06/sparrow/main/deploy/docker-compose.yml && docker compose up -d
Repo: https://github.com/sarathsp06/sparrow
Docs: https://sarathsp06.github.io/sparrow/
Feedback and code review welcome, especially on the River job design and retry semantics.


