Skip to content

The monorepo that powers incident interaction and visibility

Notifications You must be signed in to change notification settings

embrake-AI/fire

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

311 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fire

Incident management for teams that want clear, durable incident state with low operational overhead.

Architecture

Slack / Dashboard actions
          |
          v
     services/incidentd
 (Cloudflare Worker + Durable Objects + Workflows)
          |
          +--> services/dashboard   (operator UI)
          +--> services/status-page (public HTML status pages)
          +--> packages/db          (shared Postgres schema)

Services

services/incidentd

Core incident runtime.

  • Durable Object is source of truth for incident state/events.
  • Outbox + alarms forward events to workflows.
  • Workflows dispatch side effects (D1 index updates, Slack/status-page updates, etc.).

services/dashboard

SolidJS operator dashboard.

  • Incident and configuration UI.
  • Server functions with auth middleware.
  • TanStack Router + Query patterns documented in services/dashboard/AGENTS.md.
  • Includes a browser-only demo mode at demo.firedash.ai (local IndexedDB-backed behavior).

services/status-page

Next.js service that returns public status page HTML.

  • Domain-based page resolution.
  • Incident history pages and RSS/Atom feeds.
  • Reads status-page data from shared DB schema.

packages/db

Shared Drizzle schema package (@fire/db) used across services.

Getting Started

bun install
bun run dev

# Run services individually
bun run dev:dashboard
bun run dev:incidentd
bun run dev:status-page

Environment

Each service uses its own .env file. See service READMEs for required variables.

Demo Mode

Dashboard demo mode runs at demo.firedash.ai and stores data locally in the browser.

When adding new dashboard features, include demo-mode support in the same change when practical. If a feature is not supported in demo mode yet, gate it clearly in UI with an explicit message.

License

MIT

About

The monorepo that powers incident interaction and visibility

Resources

Stars

Watchers

Forks

Contributors

Languages