tanstack-table
SKILL.md
TanStack Table
Headless UI library for building tables and datagrids. Framework-agnostic core, React adapter (@tanstack/react-table) primary.
Workflow
Determine which feature applies and load the relevant reference:
- Columns - define accessors, headers, groups, sizing, ordering, pinning, visibility: references/columns.md
- Data & Row Models - data shape, row model pipeline, Row/Cell types: references/data.md
- Sorting - sort state, multi-sort, custom sort functions, manual sorting: references/sorting.md
- Filtering - column filters, global filters, faceting (column + global): references/filtering.md
- Fuzzy Filtering -
@tanstack/match-sorter-utilsintegration: references/fuzzy-filtering.md - Pagination - client-side and server-side pagination: references/pagination.md
- Row Selection - checkbox patterns, single/multi select, sub-row selection: references/selection.md
- Grouping - grouping state, aggregation, rendering grouped cells: references/grouping.md
- Expanding - sub-rows, detail panels, expand/collapse APIs: references/expanding.md
- Row Pinning - pin rows to top/bottom, keep pinned rows option: references/row-pinning.md
- Virtualization - @tanstack/react-virtual integration, row/column virtualization: references/virtualization.md
- State - controlled vs uncontrolled, onChange handlers, auto-reset: references/state.md
- Rendering - flexRender, table structure, types, framework adapters: references/rendering.md
- Advanced - editable cells, DnD reordering, div-based tables: references/advanced.md
- Custom Features - extending table with
_featuresand TypeScript declaration merging: references/custom-features.md
Principles
getCoreRowModel()is the only required row model - everything else is opt-in- Memoize column definitions with
useMemoor define outside the component - Keep data references stable - avoid inline
data={fetch()}, use state/memo - Row models are composable - pipeline: Core → Filtered → Grouped → Sorted → Expanded → Paginated
- Only import row models you need - each is tree-shakeable
flexRenderrenders cells and headers from column defs- For server-side operations - set
manualSorting/manualFiltering/manualPaginationand manage state yourself createColumnHelper<T>()for maximum type safety
Weekly Installs
3
Repository
aaronvanston/ag…t-skillsFirst Seen
Feb 20, 2026
Security Audits
Installed on
opencode3
claude-code3
github-copilot3
codex3
amp3
kimi-cli3