open source · self-hostable

Effortless push notifications.

Send alerts from any script, service, or shell, then receive them on mobile, desktop, or in your terminal.

# publish a message to an open topic
$ curl https://pingd.dev/topics/alerts/messages \
    -H 'Content-Type: application/json' \
    -d '{"payload":{"body":"Deploy finished: v2.4.1"}}'

{ "id": "a3f9...", "topic": "alerts",
  "time": "2026-04-26T21:00:31Z" }

Everything you need.
Nothing you don't.

Send from anywhere

Trigger notifications from scripts, services, CI jobs, cron tasks or any tool that can make an HTTP request.

Control access by topic

Use public flags, share tokens and pattern-based permissions to decide who can read or publish each topic.

Track every delivery

See a delivery row for every push to every device, with status, retry count and timestamps.

Reach every device

Deliver alerts to phones, desktops, browsers and terminals through APNS, Web Push and CLI-friendly flows.

Transform webhooks

Give external services an inbound URL and map incoming JSON into clean push messages.

Self-host your data

Run one small service with Docker and SQLite, keeping messages, devices, tokens and history on your own infrastructure.