Skip to main content

Components

Reusable components are organized into three directories under frontend/src/components/.

Layout Components

Located in components/layout/.

ComponentPurpose
Header.tsxTop navigation bar with app title, user menu, and auth controls
Sidebar.tsxLeft navigation with links to all pages
Shell.tsxPage shell that combines Header + Sidebar + content area

Shared Components

Located in components/shared/. Used across multiple pages.

ComponentPurpose
DonutChart.tsxSVG donut chart for health distribution breakdowns
KPICard.tsxMetric card showing a value, label, and optional trend indicator
Badge.tsxColored badge for severity levels, statuses, and tags
ScoreBar.tsxHorizontal bar showing a 0-100 score with color gradient
MiniGauge.tsxCompact gauge visualization for inline metric display
Pagination.tsxPage navigation controls for list views

Issues Components

Located in components/issues/. Used by the Issues and AI Issues pages.

ComponentPurpose
FilterBar.tsxSeverity, status, and date range filters for the issues list
IssueRow.tsxSingle row in the issues list showing name, cluster, severity, duration
IssueDetail.tsxFull detail panel for a selected issue -- alerts, metrics, recommendations
AlertTimeline.tsxChronological timeline of alert firing/resolved events for an issue