← TanStackCONTENT HISTORY

Update to TanStack

Snapshot Oct 24, 2026 · 13:37 UTC · version 0.1.3

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save TanStack and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Introduce, add, debug, or migrate TanStack Virtual for render only visible items in large scrollable lists or grids.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 106
    }
  ],
  "name": "tanstack-virtual",
  "skill_md_contents": "---\nname: tanstack-virtual\ndescription: Introduce, add, debug, or migrate TanStack Virtual for render only visible items in large scrollable lists or grids.\n---\n\n# TanStack Virtual\n\nRender only visible items in large scrollable lists or grids.\n\nUse it for: Large lists cause measurable DOM or rendering cost.\n\nUsually unnecessary for: Small lists that render quickly, virtualizing adds scrolling and accessibility complexity.\n\n## Install and try\n\nUse the project's framework and package manager. These examples target the current official documentation checked on September 30, 2026. Match installed versions before copying them into an existing project.\n\n```sh\nnpm install @tanstack/react-virtual\n```\n\nMinimal example, paste into an existing React app:\n\n```tsx\nimport { useRef } from 'react'\nimport { useVirtualizer } from '@tanstack/react-virtual'\nexport function List() {\n  const parent = useRef<HTMLDivElement>(null)\n  const virtual = useVirtualizer({ count: 10000, getScrollElement: () => parent.current, estimateSize: () => 32 })\n  return <div ref={parent} style={{ height: 320, overflow: 'auto' }}>\n    <div style={{ height: virtual.getTotalSize(), position: 'relative' }}>\n      {virtual.getVirtualItems().map(item => <div key={item.key}\n        style={{ position: 'absolute', top: 0, height: item.size, transform: `translateY(${item.start}px)` }}>\n        Row {item.index + 1}\n      </div>)}\n    </div>\n  </div>\n}\n```\n\nUse stable item keys when data changes. Measure variable-height rows instead of pretending they are fixed. Test scroll position, resize, keyboard navigation, and access to unloaded items. Virtual supplies no table sorting or data fetching.\n\n## Implement, debug, or migrate\n\nRead the project's package manifest and lockfile before changing dependencies. Load version-matched TanStack Intent guidance with `npx @tanstack/intent@latest list`, then `npx @tanstack/intent@latest load` followed by a concrete identifier returned by the list. Do not invent skill names or assume every version includes skills. If no relevant skill is packaged, use the installed version's official docs and source. Current web docs can describe a newer API than the lockfile.\n\nFor an existing project, reproduce the failure and change the smallest relevant integration. For migration, read the version-specific migration guide and preserve behavior through a small verified slice before migrating the rest. Run the project's relevant build and checks, then verify the user-visible feature. Do not add unrelated TanStack packages.\n\nIn ChatGPT without a shell or repository tools, use the connected documentation tools and provide the code and exact commands for the user to run. Never claim files were edited, packages installed, or checks passed without execution evidence.\n\n[Official docs](https://tanstack.com/virtual/latest/docs/introduction) · [Version-matched guidance](https://tanstack.com/intent/latest/docs/overview)\n"
}

SHA-256 of public snapshot: 478c122cff4bea10a3948fa58f650dc73328ae51eb6906e02f955666546a5807