tanstack-virtual

Virtualize large lists, grids, and tables with the useVirtualizer API.

29|2|Updated Jan 25, 2026
One-click install
npx skills add https://github.com/tanstack-skills/tanstack-skills --skill tanstack-virtual
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tanstack-virtual
Source: https://github.com/tanstack-skills/tanstack-skills/tree/main/plugins/tanstack-virtual/skills/tanstack-virtual
Command: npx skills add https://github.com/tanstack-skills/tanstack-skills --skill tanstack-virtual

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

TanStack Virtual enables rendering only visible items in large lists, grids, and tables to drastically reduce DOM size and boost scrolling performance.

Core Features & Use Cases

  • Virtualizes long lists and grids across React, Vue, Solid, Svelte, Lit, and Angular using a framework-agnostic core.
  • Provides a useVirtualizer API and supporting utilities to calculate visible items, total size, and item positioning.
  • Supports features like overscan, dynamic item sizing, horizontal virtualization, and grid layouts for high-performance rendering in data-heavy UIs.

Quick Start

Install @tanstack/react-virtual and initialize useVirtualizer to efficiently render large lists with dynamic item sizes.

Frequently Asked Questions about tanstack-virtual

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I virtualize large lists and grids to improve scroll performance?

List virtualization renders only visible items to reduce DOM size, drastically boosting scroll performance in data-heavy UIs across frameworks like React, Vue, and Solid.

Does list virtualization work with Vue and Solid, or just React?

List virtualization works across React, Vue, Solid, Svelte, Lit, and Angular by using a framework-agnostic core that provides consistent virtualization capabilities for all supported platforms.

How do I implement dynamic item sizing when virtualizing lists?

You can implement dynamic item sizing using the useVirtualizer API, which calculates varying item dimensions and positions to render large lists efficiently without fixed heights.

What is the best way to virtualize tables and grids for high-performance rendering?

The best way to virtualize grids and tables is using a framework-agnostic virtualizer core with overscan and horizontal virtualization options to deliver high-performance rendering in data-heavy UIs.

Can I use overscan and horizontal virtualization for complex grid layouts?

Yes, you can use overscan and horizontal virtualization options to manage complex grid layouts, ensuring smooth scrolling and high-performance rendering when navigating large data sets.

When should I not use list virtualization for rendering items?

You should avoid list virtualization for short lists where DOM size is not a performance bottleneck, as the overhead of calculating visible items and positioning outweighs the rendering benefits.