Utility
AI
Terminal
Installation
pnpm dlx shadcn@latest add https://termcn.dev/r/data-grid.json
Usage
import { DataGrid } from "@/components/ui/data-grid";<DataGrid
data={[
{ name: "Alice", role: "Engineer", status: "Active" },
{ name: "Bob", role: "Designer", status: "Away" },
]}
columns={[
{ key: "name", header: "Name", width: 12 },
{ key: "role", header: "Role", width: 12 },
{ key: "status", header: "Status", width: 10 },
]}
/>API Reference
DataGrid
| Prop | Type | Default |
|---|---|---|
data | T[] | required |
columns | DataGridColumn<T>[] | required |
pageSize | number | 10 |
onRowSelect | (row: T) => void | undefined |
onCellEdit | (row: T, key: string, value: string) => void | undefined |
borderColor | string | undefined |
borderStyle | "single" | "double" | "round" | "bold" | "single" |
showRowNumbers | boolean | false |
filterPlaceholder | string | undefined |
DataGridColumn
| Prop | Type | Default |
|---|---|---|
key | keyof T & string | required |
header | string | required |
width | number | undefined |
align | "left" | "right" | "center" | "left" |
render | (value: unknown, row: T) => string | undefined |
filterable | boolean | undefined |
sortable | boolean | undefined |