DashboardConfig Interface
Defines a status page dashboard grouping multiple monitors.Fields
Display name for the dashboardShown in the page title and navigation.
URL-friendly identifier for the dashboardUsed in routes:
/dashboard/{slug}. Must be unique across all dashboards.Whether the dashboard is publicly accessible
true: Anyone can view without authenticationfalse: Requires login to access
Array of monitor IDs to include in this dashboardMonitor IDs are filenames (without
.ts) from pongo/monitors/.Example: ["api", "database", "cdn"] references:pongo/monitors/api.tspongo/monitors/database.tspongo/monitors/cdn.ts
Uptime percentage goal for SLA trackingDisplayed on dashboard as target vs actual uptime. Common values:
99.9- “Three nines” (43.2 min downtime/month)99.95- (21.6 min/month)99.99- “Four nines” (4.32 min/month)
Real Examples
Public Status Page
pongo/dashboards/status.ts
Internal Operations Dashboard
pongo/dashboards/internal.ts
Regional Dashboard
pongo/dashboards/us-east.ts
Simple Dashboard
pongo/dashboards/simple.ts
File Naming
Dashboard configuration files must:- Live in
pongo/dashboards/directory - Use
.tsextension - Export dashboard config with
satisfies DashboardConfig - Filename becomes the dashboard ID
pongo/dashboards/status.ts creates dashboard with ID "status"
Dashboard URLs
Dashboards are accessible at:slug: "status"→/dashboard/statusslug: "internal"→/dashboard/internalslug: "us-east"→/dashboard/us-east
Monitor Order
Monitors appear on the dashboard in the order specified in themonitors array: