# Tanstack Svelte Table Best Practices

> TanStack Table v9 conventions for static Svelte table schemas and reactive instance data. Use when creating or reviewing Svelte tables, columns, metadata, or rendering.

- Skill: `bastidood/tanstack-svelte-table-best-practices` (Agent Skill, multi-file: 9 files)
- Install (CLI): `npx skillmds@latest add bastidood/tanstack-svelte-table-best-practices`
- Raw SKILL.md: https://api.skillmd.com/api/skills/bastidood/tanstack-svelte-table-best-practices/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: BastiDood (https://skillmd.com/u/bastidood)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/bastidood/tanstack-svelte-table-best-practices

---


# TanStack Svelte Table Best Practices

Treat a table as a static schema paired with reactive instance data and feature-local behavior; this keeps rendering, callbacks, and data updates predictable.

## Library Sources

- GitHub repository ID: `TanStack/table`
- Context7 library ID: `/tanstack/table`
- DeepWiki repository ID: `TanStack/table`

Use Context7 for current documentation and DeepWiki for implementation details.

## References

Read the references that apply to the current task before writing or reviewing TanStack Svelte Table code.

1. Treat columns as static schema and table behavior as instance-local capability.
   - [Keep the table contract static and its capabilities feature-local](./references/table-contract.md). Pass per-instance callbacks through table meta, and reserve declaration merging for an intentional application-wide contract.
2. Provide changing rows reactively and render definitions through their table-owned context.
   - [Preserve reactive ownership](./references/reactive-ownership.md) with getter-backed options, narrow atom reads, and matching change callbacks.
   - [Render definitions, components, and snippets through adapter primitives](./references/cell-rendering.md), since raw definitions lack their table-owned context.
3. Register only the features and implementation functions that the table uses.
   - [Compose explicit, tree-shakeable capabilities](./references/explicit-capabilities.md), including individual filter, sort, and aggregation functions instead of whole registries.
4. Keep reactive ownership and table-object calls explicit.
   - [Preserve instance ownership by calling methods through their receiver](./references/instance-ownership.md); rows, cells, columns, and headers use prototype-bound methods.
5. Keep table controls consistent as pages load.
   - [Handle selection, sort removal, filters, and pinning](./references/interaction-semantics.md) without treating loaded rows as the full dataset.

