Table
The plain table parts for rows of facts. Use it for short, static lists; reach for the data table block when you need sorting, selection or paging.
bunx --bun shadcn@4.17.0 add @waimakers/table- npm dependencies
- None
From the registry
Header, body, row, head and cell; wrapper scrolls horizontally so a wide table never scrolls the page body.
Examples
Basic
Header, body and a caption. The container scrolls sideways so a wide table never scrolls the page.
| Agent | Skill | Owner | Duration |
|---|---|---|---|
| Meeting scribe | Summarise meeting | Anna | 42s |
| Inbox triage | Sort email | Joost | 1m 08s |
| Release notes | Draft changelog | Tamar | 3m 51s |
With footer
A footer row carries totals on the sunken surface.
| Agent | Runs | Tokens |
|---|---|---|
| Meeting scribe | 128 | 1.9M |
| Inbox triage | 412 | 2.4M |
| Release notes | 9 | 0.3M |
| October | 549 | 4.6M |
Row states
A selected row takes the muted fill. Rows holding a link or button light up on hover.
| Select | Skill | Agents |
|---|---|---|
| Summarise meeting | 3 | |
| Sort email | 1 | |
| Draft changelog | 2 |
Loading
SkeletonTable holds the shape while rows load, and announces it once.
Empty
No rows yet: say why in one line and offer the next step.
| Agent | Skill | Duration |
|---|---|---|
No runs in the last hour Runs appear here as soon as an agent starts one. | ||
Load error
When the rows fail to load, name what failed and offer a retry.
The runs did not load
The audit log did not answer in time. Your runs are safe.