Production dashboard primitives for shadcn/ui.
Data tables, modals and sheets you install with the shadcn CLI and own outright. They build on stock shadcn/ui primitives, so they pick up your theme and work in any React framework.
Components
Data Table
Server-driven TanStack table with row links, sorting, pagination, tabs, filters, context menus, split view, expandable rows and cross-page selection.
@dentil/data-table@dentil/data-table-filter@dentil/data-table-url-stateModals
Promise-based modal registry. await openModal(key, props) for a typed result, with lazy-loaded contents and stacking.
@dentil/modalsSheets
Promise-based side sheets with the same typed registry, plus stacking, minimize-to-dock and draft retention.
@dentil/sheetsGet started
Set up with your AI
Give your coding agent the dentil skill, then ask it to add a data table, modals or sheets. Paste it into the chat, or save it as .cursor/skills/dentil/SKILL.md or .claude/skills/dentil/SKILL.md so the agent uses it whenever dentil comes up. Agents can also read it from https://dentil.dev/skill.md.
Set up manually
Add the registry to components.json
This lets the CLI resolve @dentil/* names. You can skip it and install by URL instead.
{ "registries": { "@dentil": "https://dentil.dev/r/{name}.json" } }Install a component
The CLI adds any stock shadcn/ui components it needs. Requires React 19 and Tailwind v4, with a Radix or Base UI style.
pnpm dlx shadcn@latest add @dentil/data-tablenpx shadcn@latest add @dentil/data-tableyarn dlx shadcn@latest add @dentil/data-tablebunx --bun shadcn@latest add @dentil/data-tablepnpm dlx shadcn@latest add https://dentil.dev/r/data-table.jsonnpx shadcn@latest add https://dentil.dev/r/data-table.jsonyarn dlx shadcn@latest add https://dentil.dev/r/data-table.jsonbunx --bun shadcn@latest add https://dentil.dev/r/data-table.jsonRead the docs
Each page has setup steps, live examples and an API reference.