table
TanStack Table is a headless, framework-agnostic datagrid library that supplies table logic—sorting, filtering, grouping, aggregation, pagination, and row selection—while leaving all markup and styling to the developer. It ships adapters for React, Vue, Solid, Svelte, Angular, and Lit.
MITPermissive — free to use in commercial and proprietary software, with attribution.View license →
Production readiness
4/5- Actively maintainedCommits in the last 6 months
- No known vulnerabilitiesNot yet scanned
- Clear, usable licenseMIT (permissive)
- Proven adoptionWidely used
- Has documentationDocumentation indexed
npm install tableOur analysis
A headless table/datagrid engine that computes all the state and logic for complex tables but renders nothing itself, giving developers complete control over markup, components, and styles via thin framework adapters.
When to use table
Use it when you need full ownership of table markup and design (custom cells, styling, virtualization integration) while offloading the heavy logic of sorting, multi-column filtering, grouping, aggregation, expansion, column pinning/resizing, and client- or server-side pagination. Ideal for design systems and apps wanting consistent table behavior across React/Vue/Solid/Svelte/Angular.
When not to
If you want a batteries-included grid with prebuilt UI, theming, and enterprise features (Excel export, complex editing, master/detail) out of the box, a styled grid like AG Grid or MUI X Data Grid will get you there faster. The headless model means you write more boilerplate for rendering.
Strengths
- Truly headless — no style or markup lock-in, integrates with any design system
- Strong, fully-typed TypeScript API
- One core, many framework adapters keeps behavior consistent
- Composable feature model (row models) keeps bundles lean and tree-shakeable
- Pairs cleanly with TanStack Virtual for large datasets and supports server-side workflows
Trade-offs
- Steeper learning curve and more boilerplate than ready-made grids since you build the UI
- No built-in styling, theming, or prebuilt cell editors
- Some advanced enterprise features must be assembled manually
- Non-React adapters historically lag the React adapter in maturity and docs
- Major version migrations (e.g. to v9) require API adjustments
Maturity
Very mature and widely adopted (~28k stars), backed by the well-maintained TanStack ecosystem with active development, a v9 line, AI agent skills via TanStack Intent, and broad production usage.
Become a Sponsor!
TanStack Table
[!NOTE] You may know TanStack Table by the adapter names:
A headless table library for building powerful datagrids with full control over markup, styles, and behavior.
Framework‑agnostic core with bindings for React, Vue & Solid
100% customizable — bring your own UI, components, and styles
Sorting, filtering, grouping, aggregation & row selection
Lightweight, virtualizable & server‑side friendly
Read the Docs →
Using an AI Coding Agent?
TanStack Table ships TanStack Intent skills inside each adapter package. After installing the library, run:
npx @tanstack/intent@latest install
to add skill-loading guidance for your agent (Claude Code, Cursor, Copilot, etc.). The same CLI also exposes intent list to browse available skills and intent load <skill> to print one for inspection. Skills version with the library — your agent gets guidance that matches the version of @tanstack/<framework>-table you installed. Only available for v9 and above.
Get Involved
We welcome issues and pull requests!
Participate in GitHub discussions
Chat with the community on Discord
See CONTRIBUTING.md for setup instructions
Partners
Explore the TanStack Ecosystem
TanStack Config – Tooling for JS/TS packages
TanStack DB – Reactive sync client store
TanStack DevTools – Unified devtools panel
TanStack Form – Type‑safe form state
TanStack Pacer – Debouncing, throttling, batching
TanStack Query – Async state & caching
TanStack Ranger – Range & slider primitives
TanStack Router – Type‑safe routing, caching & URL state
TanStack Start – Full‑stack SSR & streaming
TanStack Store – Reactive data store
TanStack Virtual – Virtualized rendering
… and more at TanStack.com »