shadcn.io is not affiliated with official shadcn/ui
Kubernetes Pods Dashboard Block for Svelte
Pods in three namespaces on tabs, with status in words, restarts counted from the last 24 hours, CPU and memory against their limits, and a side cell with the chosen pod's containers and a strip of restart ticks.
Installation
Overview
Spot the pod that keeps restarting, with this cluster panel for Svelte with Ark UI. A hairline frame with a plus mark on each corner holds Tabs for three Seedhouse namespaces, each counting its pods, over a table with the pod's name in mono, its status as a word, restarts in the last 24 hours, and CPU and memory against their limits as small bars with the figure beside them. Choosing a pod fills the side cell with its containers (image tag, ready or not, limits) and a 24-hour strip with a tick for every restart and the last reason, such as "OOMKilled, exit 137". Changing the tab chooses that namespace's first pod. It's built from Tabs and Guides, with CSS entrances only. For cluster consoles, on-call dashboards and release checks.
FAQ
How do I fill it with my own pods?
Edit PODS. Each has a namespace, a status, its containers, CPU in millicores and memory in MiB with their limits, a reason for the last restart, and restartHours: how many hours ago each restart in the last 24 hours happened. The restart column, the strip and the header's totals are counted from restartHours, so they never disagree.
What do the bars measure?
Each bar is use as a share of the limit, so a full bar means the pod is at its limit, not that the node is full. The figure beside it is the absolute use in millicores or MiB.
What stays local, and how do I wire it for real?
Everything: the pods are typed and nothing is read from a cluster. Replace PODS with the output of your cluster's API or metrics server, and fill restartHours from container restart times and reason from the last terminated state.
Can I use it without a pointer?
Yes. The tabs take arrow keys, each pod's name is a real button inside a table with a caption and row headers, the chosen pod is marked with aria-current, the restart strip has a text label that lists the hours, and a polite status line reads the chosen pod. A status other than Running is a word and, for the unhealthy ones, an icon, never only a colour.