Raycast extension that monitors status pages so you can quickly answer: is the outage on my side or theirs?
Add status page URLs, get a color-coded list of services, and drill into component-level detail with uptime history — without opening a browser tab.
Site list — parallel fetch, status subtitles, and quick access to details.
Detail view — component breakdown, active incidents, and 90-day uptime history.
The extension auto-detects the provider when you add a URL. Detection order: Railway → incident.io → Better Stack → Statuspage.
| Provider | Examples | Detection |
|---|---|---|
| Railway | status.railway.com | Hostname match |
| incident.io | status.openai.com | /proxy/{host}/component_impacts API |
| Better Stack | status.yachtway.com | /index.json JSON:API |
| Statuspage.io | status.claude.com, GitHub, Vercel | /api/v2/summary.json |
incident.io is checked before Statuspage because some Statuspage hosts expose proxy-style URLs that look similar but lack incident.io-only endpoints like component_impacts.
Requires Raycast, Node.js, and npm.
npm install
npm run dev # run in Raycast dev mode
npm run lint # lint + format check
npm run build # production build
src/
alive.tsx # main list command
adapters/
index.ts # provider detection + registry
statuspage.ts # Statuspage.io v2 API
betterstack.ts # Better Stack /index.json API
incident-io.ts # incident.io proxy API
railway.ts # Railway status API
components/
site-form.tsx # add / edit form
site-detail.tsx # preview with uptime charts
hooks/use-sites.ts # local storage CRUD
lib/
fetch-json.ts # shared JSON fetch helper
snapshot-text.ts # uptime labels + status descriptions
status-colors.ts # indicator + component colors
uptime-chart.ts # SVG chart generation + uptime math
url.ts # URL normalization + Railway host check
types/ # shared + provider-specific API types
SiteProvider variant in src/types/index.tssrc/types/ if neededStatusAdapter (detect? + fetchSnapshot) in src/adapters/src/adapters/index.ts and update detectProviderEach adapter normalizes its API into a shared StatusSnapshot shape so the UI stays provider-agnostic.
MIT