Skip to content
cccskills
FreePublished on GitHub

table-features

Add or troubleshoot Table v9 features such as sorting, filtering, pagination, selection, merged cells, and column layout. Guidance helps check feature registration, dependencies, and row-processing settings, with references selected for the task.

OriginalShow the original description

Add or debug Table v9 features: registration, row-model slots, prerequisites, sorting, filtering, pagination, selection, spanning, and column layout. Read only task-relevant feature references.

See how to install

Good for

  • Adding sorting, filtering, and pagination
  • Investigating missing table APIs or state
  • Configuring row selection, cell selection, or merged cells
  • Reviewing column layout and client/server processing

Files included (19)

  • SKILL.md9.3 KB
  • references/aggregation.md4.1 KB
  • references/cell-selection.md9.4 KB
  • references/cell-spanning.md5.3 KB
  • references/client-vs-server.md4.0 KB
  • references/column-faceting.md2.8 KB
  • references/column-filtering.md2.7 KB
  • references/column-ordering.md2.0 KB
  • references/column-pinning.md2.2 KB
  • references/column-resizing.md2.3 KB
  • references/column-sizing.md1.8 KB
  • references/column-visibility.md1.9 KB
  • references/expanding.md2.0 KB
  • references/global-filtering.md2.3 KB
  • references/grouping.md2.6 KB
  • references/pagination.md2.1 KB
  • references/row-pinning.md2.0 KB
  • references/row-selection.md6.1 KB
  • references/sorting.md2.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Feature architecture

Read core first for the headless model and stable inputs.

Register the behavior the table uses

<!-- skill-snippet:check -->
import {
  createSortedRowModel,
  rowSortingFeature,
  sortFn_alphanumeric,
  tableFeatures,
} from '@tanstack/table-core'

export const features = tableFeatures({
  rowSortingFeature,
  sortedRowModel: createSortedRowModel(),
  sortFns: { alphanumeric: sortFn_alphanumeric },
})

Pass the stable features object to the installed adapter constructor. The concrete registry determines optional APIs, options, state slices, and their types. The core row model is automatic; a custom core model uses coreRowModel.

Registration rules

  • Register each prerequisite feature before its dependent slot in the same tableFeatures call. A processing factory alone cannot install that feature's APIs or state.
  • Row-model factories use create*RowModel() feature slots. Their names and prerequisites are in the feature reference. They take no function-registry arguments.
  • filterFns, sortFns, and aggregationFns are feature slots, not table options. They require columnFilteringFeature, rowSortingFeature, and rowAggregationFeature, respectively.
  • Import individual built-ins such as sortFn_alphanumeric and register their conventional keys. Those keys become typed string names; 'auto' can resolve only registered functions. Pass a function directly when a column needs no named registry entry. Full registry exports bundle every built-in.
  • columnResizingFeature requires columnSizingFeature; globalFilteringFeature requires columnFilteringFeature. Check installed FeatureSlotPrereqs for other dependencies.
  • Use explicit features for normal construction. stockFeatures is a deliberate all-features convenience or temporary migration aid, with the corresponding bundle cost.

A missing API can mean missing registration. Check the concrete feature object before casting, recreating an API, or assuming v9 removed it.

Select references by the requested change

Read only references needed for the requested behavior and its dependencies, including features being added. An unrelated feature already registered on the table does not make its reference necessary.

Task involvesRead
Manual modes, server data, mixed row-processing stages, or dataset scopeClient/server ownership
Totals, multiple aggregations, grouped aggregate values, or custom aggregate definitionsAggregation
Facet option counts, numeric ranges, or incomplete server facetsColumn faceting
Per-column filters, filter functions, metadata, or nested-row filteringColumn filtering
Group rows, placeholders, or grouping with expansion/paginationGrouping
Drag ordering or leaf-column order differing from stateColumn ordering
Sticky column regions, logical start/end, or pinning gapsColumn pinning
Drag resize handles, gesture events, or resize performanceColumn resizing
Numeric widths, min/max limits, or model/CSS size mismatchColumn sizing
Hidden columns, visibility-aware rendering, or hiding controlsColumn visibility
A search across columns or global-filter eligibilityGlobal filtering
Hierarchical subrows, detail panels, or expansion/page interactionExpanding
Page slicing, counts, navigation, or page-index resetsPagination
Top/bottom pinned rows or their visibility outside the current pageRow pinning
Rectangular cell selection, include/exclude ranges, or drag outlinesCell selection
Merged body cells, covered cells, or spans changing with row orderCell spanning
Row checkboxes, select-all, Shift ranges, or IDs across pagesRow selection
Sorting, comparators, undefined values, or sort interaction cyclesSorting

For controlled state or reset behavior, read shared state and load the installed adapter's state skill for reactive wiring.

Installed API discovery

Inspect node_modules/@tanstack/table-core/dist/types/TableFeatures.d.ts for slots and FeatureSlotPrereqs. Follow dist/features/<feature>/ for exact state, option, and instance declarations. Each reference names its feature directory.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

core

FreeSummary

Build table data processing with TanStack Table v9 while keeping data and column definitions stable. The skill guides type inference, which determines types automatically, row identity, optional features, and checks for missing APIs.

  • Set up the foundation for table data processing
  • Troubleshoot column type inference
  • Investigate missing APIs or optional features
TanStack/table28.5KUpdated Oct 13, 2026

custom-features

FreeSummary

Build a Table v9 plugin when built-in settings and typed metadata are insufficient. Guides custom state, options, and methods, with initialization hooks and runtime checks to ensure declared APIs actually exist and reset correctly.

  • Add reusable custom table behavior
  • Design plugin state and reset behavior
  • Keep declared APIs consistent with runtime behavior
TanStack/table28.5KUpdated Oct 13, 2026

devtools

FreeSummary

Connect Preact Table v9 to Devtools, a development inspection interface. This skill guides package selection, unique table keys, registration settings, and development-only behavior to help diagnose tables that do not appear.

  • Connecting Preact tables to Devtools
  • Diagnosing missing table targets
  • Checking duplicate keys across tables
TanStack/table28.5KUpdated Oct 13, 2026

devtools

FreeSummary

Connect React Table v9 to Devtools, a development inspection interface. Configure table registration, unique keys, and enabled settings, and diagnose missing panels while understanding registration cleanup and the separate entrypoint for explicit production use.

  • Adding Devtools to React tables
  • Diagnosing missing Table panels
  • Controlling registration with enabled
TanStack/table28.5KUpdated Oct 13, 2026

devtools

FreeSummary

Connect Solid Table v9 tables to Devtools and troubleshoot missing inspection targets. This skill guides table registration, unique keys, conditional activation, automatic cleanup, and the distinction between development exports and explicit production imports.

  • Connect a Solid Table instance to Devtools
  • Investigate tables missing from Devtools
  • Check registration keys and lifecycle cleanup
TanStack/table28.5KUpdated Oct 13, 2026

devtools

FreeSummary

Connect TanStack Table instances to developer tools for inspecting options, state, features, columns, rows, and row models. Diagnose missing connections, assign unique table keys, and manage registration replacement and cleanup.

  • Inspect table options, state, columns, and rows
  • Diagnose tables missing from developer tools
  • Assign distinct keys to multiple tables
TanStack/table28.5KUpdated Oct 13, 2026

See all skills by TanStack

Report a problem with this skill