tanstack-table

Provide headless table primitives for building sortable, filterable data grids in JavaScript/TypeScript frameworks including React, Vue, Svelte, Angular, and others.

29|2|Updated Jan 25, 2026
One-click install
npx skills add https://github.com/tanstack-skills/tanstack-skills --skill tanstack-table-tanstack-skills
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: tanstack-table
Source: https://github.com/tanstack-skills/tanstack-skills/tree/main/plugins/tanstack-table/skills/tanstack-table
Command: npx skills add https://github.com/tanstack-skills/tanstack-skills --skill tanstack-table-tanstack-skills

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a headless, framework-agnostic set of table primitives that remove the boilerplate of building performant, feature-rich data tables and datagrids while keeping rendering and styling entirely under the application developer's control.

Core Features & Use Cases

  • Sorting, filtering, and pagination: Compose client-side or server-side row models to support complex sorting and filtering workflows.
  • Grouping, aggregation, and row expansion: Build hierarchical views, aggregated summaries, and expandable detail rows for nested datasets.
  • Column features: Pinning, ordering, visibility toggles, resizing, and custom rendering for flexible column behaviors.
  • Virtualization integration: Efficiently render large lists with virtual scrolling and dynamic row sizing.
  • TypeScript-first patterns: Safe column definitions, module augmentation for custom filter/sort functions, and table meta for shared behaviors.
  • Use Case: Implement a sortable, filterable, virtualized React table with server-side pagination and custom aggregation for a reporting dashboard.

Quick Start

Create a React table using @tanstack/react-table with memoized columns and data, enable the required row models for sorting, filtering, and pagination, and integrate a virtualizer for large datasets.

Frequently Asked Questions about tanstack-table

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a type-safe sortable and filterable data grid in React?▼

Build sortable, filterable data grids using headless table primitives that provide TypeScript-first column definitions and modular row models, keeping rendering and styling entirely under your application's control.

Can I implement server-side pagination and virtual scrolling for large datasets?▼

Yes, implement server-side pagination and virtual scrolling by integrating a virtualizer for dynamic row sizing and applying manual server-side controls to handle large datasets efficiently.

Does this headless table approach work with Vue, Solid, Svelte, and Angular?▼

The headless table primitives are framework-agnostic and work with React, Vue, Solid, Svelte, Qwik, Angular, and Lit for client-side rendering and server-side pagination scenarios.

What is the best way to create hierarchical views with grouped and aggregated data?▼

Create hierarchical views and aggregated summaries by composing modular row models for grouping and row expansion, supporting nested datasets with expandable detail rows.

How do I manage column pinning, ordering, visibility toggles, and resizing?▼

Manage column behaviors using built-in primitives for pinning, ordering, visibility toggles, and resizing, alongside custom rendering for flexible column definitions.

Do I need TypeScript to use these headless data table primitives?▼

TypeScript is recommended to leverage safe column definitions, module augmentation for custom filter and sort functions, and table meta for shared behaviors, but JavaScript front-end applications are also supported.