# System map — TanStack/table

> Canonical page: https://codevetter.com/unpack/table/system-map

# System map — TanStack/table

Scanned commit 23f21c194e6eba2e7f0321e817104d6e118d6141 (2026-10-01). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

The system centers on a framework-independent table engine, with adapters supplying rendering and reactivity integration. Table state resides in an atom graph, while row-model factories derive the data presented to renderers. Workers and devtools introduce separate execution and inspection boundaries without turning the core into a backend service. Distribution uses workspace packages with explicit ESM exports, and examples provide independently runnable application surfaces.
- The public product is a headless datagrid library with adapters for React, Preact, Octane, Vue, Solid, Svelte, Angular, Ember, Lit, and Alpine; application authors supply markup, components, and styles. — [README.md#L45-L66](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/README.md#L45-L66)
- The React entrypoint re-exports table-core and adds FlexRender, Subscribe, createTableHook, contexts, and useTable; the core entrypoint exposes constructors, types, helpers, features, and row-model factories. — [packages/react-table/src/index.ts#L1-L7](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/react-table/src/index.ts#L1-L7) [packages/table-core/src/index.ts#L23-L59](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/index.ts#L23-L59) [packages/table-core/src/index.ts#L65-L95](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/index.ts#L65-L95)
- constructTable owns feature registration, resolved options, writable baseAtoms, readonly effective atoms, and a shallow-compared aggregate store; initial state determines the registered state keys. — [packages/table-core/src/core/table/constructTable.ts#L61-L82](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/core/table/constructTable.ts#L61-L82) [packages/table-core/src/core/table/constructTable.ts#L126-L194](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/core/table/constructTable.ts#L126-L194)
- Row processing is a lazy factory pipeline: core → filtering → grouping → sorting → expansion → pagination. Each optional stage can return its predecessor when its factory is absent or its manual mode is enabled. — [packages/table-core/src/core/row-models/coreRowModelsFeature.utils.ts#L61-L75](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/core/row-models/coreRowModelsFeature.utils.ts#L61-L75) [packages/table-core/src/core/row-models/coreRowModelsFeature.utils.ts#L150-L164](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/core/row-models/coreRowModelsFeature.utils.ts#L150-L164) [packages/table-core/src/core/row-models/coreRowModelsFeature.utils.ts#L240-L272](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/core/row-models/coreRowModelsFeature.utils.ts#L240-L272)
- The experimental worker integration has an application-created dedicated Worker and a shadow table inside that worker; registered processing stages share a handle and communicate through data/process/result messages. — [packages/table-core/src/worker/createTableWorker.ts#L33-L50](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/worker/createTableWorker.ts#L33-L50) [packages/table-core/src/worker/createTableWorker.ts#L193-L207](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/worker/createTableWorker.ts#L193-L207) [packages/table-core/src/worker/initTableWorker.ts#L68-L82](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/src/worker/initTableWorker.ts#L68-L82)
- Shared devtools are implemented with Solid and lazily loaded through constructCoreClass; framework registration adapters connect tables to a key-based registry, while documented defaults disable live tools in production. — [packages/table-devtools/src/core.tsx#L1-L12](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-devtools/src/core.tsx#L1-L12) [packages/table-devtools/src/tableTarget.ts#L57-L80](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-devtools/src/tableTarget.ts#L57-L80) [packages/react-table-devtools/src/useTanStackTableDevtools.ts#L18-L27](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/react-table-devtools/src/useTanStackTableDevtools.ts#L18-L27) [docs/devtools.md#L6-L11](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/docs/devtools.md#L6-L11)
- The private root workspace pins pnpm@12.4.1 and requires Node >=20. Nx coordinates affected or all-package builds and checks, while pnpm-workspace.yaml links examples and library packages to local workspace versions. — [package.json#L1-L17](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/package.json#L1-L17) [package.json#L30-L48](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/package.json#L30-L48) [pnpm-workspace.yaml#L1-L24](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/pnpm-workspace.yaml#L1-L24)
- table-core publishes explicit subpath exports and builds unbundled ESM plus declarations before rewriting its declarations. Inspected Alpine/Lit examples use Vite on port 7777; the listed Octane examples additionally install the Octane compiler plugin. — [packages/table-core/package.json#L29-L57](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/package.json#L29-L57) [packages/table-core/tsdown.config.ts#L3-L22](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/packages/table-core/tsdown.config.ts#L3-L22) [examples/lit/realtime-trading/vite.config.ts#L1-L2](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/examples/lit/realtime-trading/vite.config.ts#L1-L2) [examples/octane/basic-use-app-table/vite.config.ts#L1-L10](https://github.com/TanStack/table/blob/23f21c194e6eba2e7f0321e817104d6e118d6141/examples/octane/basic-use-app-table/vite.config.ts#L1-L10)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
