
TanStack Table
Headless library for building customizable data tables in TypeScript and JavaScript.TanStack/table
- Stars
- 28.5k
- Forks
- 3.6k
- Licence
- MIT
- Language
- TypeScript
- Last update
- 16 days ago
- Type
- Library
What it is
TanStack Table is a headless library: it handles table logic such as sorting, filtering, grouping, aggregation, row selection and pagination, but ships no visual components. You write the markup and styles yourself, using adapters for React, Vue, Solid, Svelte, Angular and other frameworks. It is used by developers who need a table or data grid they can fully control.
- Build a sortable, filterable table of records from an API
- Group rows and show aggregated totals per group
- Add row selection and pagination to a table you style yourself
- Connect a table to server-side sorting and paging
Great for
- Developers building custom data tables in React, Vue, Solid, Svelte or another supported framework
- Teams that already have a design system and want a table that matches it
- Apps that need sorting, filtering, grouping or server-side data handling in a table
- Projects that want a small library they can virtualize for large datasets
Not ideal for
- People who want a ready-made grid with styling out of the box, since the library provides no UI components
- Non-developers, because it requires writing code to use
- Projects that need a fully built-in spreadsheet-style grid with editing features, since the README describes only headless table logic
How to get it
- 1
Install with a package manager
Clone the repository
git clone https://github.com/TanStack/table - 2
Run it
- Install the adapter package for your framework (the README references @tanstack/react-table as an example)
- Read the quick start guide at https://tanstack.com/table for your framework
- Define your columns and data, then create a table instance with the library's hook or function
- Render the table rows and cells with your own markup and styles
- 3
Get the most out of it
- Use the optional TanStack Intent CLI (npx @tanstack/intent@latest install) to give an AI coding agent version-matched guidance for the library
- Use the intent list and intent load commands to browse and inspect available skills
- Combine with TanStack Virtual for rendering large tables efficiently, as the README mentions virtualization support
- Use server-side features for sorting, filtering and pagination when data is too large to load at once
Downloads
Strengths
- Headless design gives full control over markup, styles and behavior
- Supports many frameworks through one framework-agnostic core
- MIT licensed with a large community, about 28.5k GitHub stars at time of review
Trade-offs
- Because it is headless, you must build all the visual parts yourself
- The README is truncated here, so setup details and version requirements could not be verified
- Requires JavaScript or TypeScript knowledge to use effectively
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| table (this) | 28.5k | Library | intermediate | 16 days ago | Developers building custom data tables in React, Vue, Solid, Svelte or another supported framework |
| zustand | 58.9k | Library | beginner | 15 days ago | React developers who want simpler shared state than Redux |
| react-sortable-hoc | 10.9k | Library | intermediate | 3.2 years ago | Existing React projects that already use react-sortable-hoc and need security fixes only |
| bootstrap-table | 11.8k | Library | beginner | 7 days ago | Web developers already using Bootstrap who need sortable, paginated tables |
| react-hook-form | 44.9k | Library | intermediate | 5 days ago | React developers building forms with several fields |
| swr | 32.5k | Library | intermediate | 21 days ago | React developers who fetch data from APIs in components |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.