go-webpush — notification demo
Self-hosted Web Push · no Firebase · GET /vapid/public-key is the only setup.
This page registers a real browser subscription and sends a test push through this service.
1 · Subscribe this browser
Not subscribed yet.
2 · Send a test push
Register a subscription first.
Subscription
—
Copy the id — that is what POST /v1/send targets (or use user_ids / scopes).
API surface
| Endpoint | Purpose |
|---|---|
GET /vapid/public-key | VAPID key for pushManager.subscribe |
POST /v1/subscriptions | Register a subscription |
GET /v1/subscriptions | List (?user_id=&scope=) |
DELETE /v1/subscriptions/{id} | Unregister |
POST /v1/send | Encrypt + deliver (targets: ids / user_ids / scopes) |
GET /api/status | Service + store + subscription count |
Full integration guide (backoffice, abandoned carts, other services): docs/webpush-usage.md.
The service worker this demo uses is served at /sw.js — copy it into your app's origin.