Free tools

Two small tools, MIT licensed, each extracted from one of the paid products. Download, read, use.

webhooksig: webhook signature verification for Go

Standard library only. Verifies GitHub-style, Stripe-style (with a replay window) and Standard Webhooks signatures in constant time.

key, _ := webhooksig.ParseStandardSecret(os.Getenv("WEBHOOK_SECRET")) // "whsec_<base64>"
err := webhooksig.VerifyStandard(key, body,
    r.Header.Get("webhook-id"), r.Header.Get("webhook-timestamp"), r.Header.Get("webhook-signature"),
    time.Now(), 5*time.Minute)

Tested with go test -race: tampered body, wrong secret, malformed headers, stale and future timestamps, several signatures in one header, and the Standard Webhooks known-answer vector from the project's reference Go library.

Download webhooksig.zip

vps-restore-test: does your restic backup actually restore?

A bash script that restores the latest restic snapshot into a temporary directory and checks it: the restore works, the directory is not empty, SQLite dumps pass an integrity check, Postgres dumps are readable, an optional command of your own passes, and restic check on a sample passes. It exits non-zero on any failure, so cron can tell you.

Tested in a Debian 12 container with a good backup, a wrong repository and a snapshot with a missing dump.

Download vps-restore-test.zip

Want more?

The paid VPS Deploy & Backup Kit adds the backup script with consistent database dumps and retention, blue/green deploys with rollback and failure alerts. The Go Webhook Receiver Starter adds the queue, dedupe, retries and operations tooling around webhooksig.