Status Page
A public status page with a computed overall banner, an active incident with a stage stepper and timeline, grouped components with 90-day uptime bars, past incidents and a subscribe popover.
Preview
Some systems are degraded
1 of 4 components affected · Updated 10:42 UTC
99.99%90-day uptime
Minor impactAffects Sync
Delayed sync for some workspaces in the EU
- Investigating (done)
- Identified (done)
- Monitoring
- Resolved
- monitoring10:40
A fix is rolled out and sync delay is back under 2 s. We’re watching it.
- identified09:55
A slow database replica in eu-west was holding replay jobs.
- investigating09:12
Some edits take minutes to appear for collaborators in EU workspaces.
Components
90 days ago → todayCore
Web app
Editor and notebooks
99.99% uptimeOperational
Sync
Realtime edits and offline replay
99.97% uptimeDegraded
Platform
API
REST and webhooks
99.99% uptimeOperational
Search
Tracked for 60 days
100.00% uptimeOperational
Past incidents
Replay queue stalled after a deploy
Impact: critical.resolvedSep 23, 07:30 · 22 minSlow webhook delivery
Impact: minor.resolvedSep 1, 16:10 · 25 min
Install
Pro source requires Pebble Pro. Try the full preview above.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| product | string | — | Product name in the header. |
| components | StatusComponent[] | — | { id, name, description?, status, days, group? }; the worst status drives the banner. |
| incident | ActiveIncident | null | — | Active incident: { id, title, impact, stage, affected?, updates } (updates newest first). |
| pastIncidents | Incident[] | [] | Resolved incidents (IncidentList). |
| updated | ReactNode | — | Last-updated text in the banner. |
| onSubscribe | (email) => void | { error } | Promise | — | Subscribe handler; resolve { error } to show it in the popover. |
| height | number | 640 | Frame height in px. |
Pro component
Try the full preview above. Editable source and build guides require Pebble Pro.
