# tanstack/virtual

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/tanstack-virtual).**

6,710 stars · 425 forks · TypeScript · mit

## Links

- GitHub: https://github.com/TanStack/virtual
- Homepage: https://tanstack.com/virtual
- awesome-repositories: https://awesome-repositories.com/repository/tanstack-virtual.md

## Topics

`javascript` `performance` `react` `reactjs` `scrolling` `solid` `solidjs` `svelte` `virtualization` `virtualized` `vue`

## Tags

### Artificial Intelligence & ML

- [Chat State Managers](https://awesome-repositories.com/f/artificial-intelligence-ml/chat-state-managers.md) — Provides a headless client for managing typed chat state, streaming, and tool execution. ([source](https://tanstack.com/ai/latest/docs/getting-started/overview))
- [Agentic Execution Loops](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-reasoning-loops/critic-agent-loops/agentic-execution-loops.md) — Executes a multi-step conversation where the AI calls tools, receives results, and continues until a stopping condition is met. ([source](https://tanstack.com/ai/latest/docs/getting-started/overview))
- [Streaming Chat Responses](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-chat-clients/streaming-chat-responses.md) — Sends AI-generated text to the client incrementally as it is produced, enabling real-time chat interfaces. ([source](https://tanstack.com/ai/latest/docs/getting-started/overview))
- [Human Approval](https://awesome-repositories.com/f/artificial-intelligence-ml/human-approval.md) — Implements a human-in-the-loop approval step that pauses tool execution for user review. ([source](https://tanstack.com/ai/latest/docs/getting-started/overview))
- [LLM Provider Adapters](https://awesome-repositories.com/f/artificial-intelligence-ml/llm-provider-adapters.md) — Switches between multiple LLM providers through a unified adapter interface. ([source](https://tanstack.com/ai/latest/docs/getting-started/overview))
- [Human-in-the-Loop Approvals](https://awesome-repositories.com/f/artificial-intelligence-ml/step-based-schedulers/step-execution-engines/execution-step-controllers/human-in-the-loop-approvals.md) — Injects a human-in-the-loop approval step into a workflow, pausing until the approval is resolved via the event log. ([source](https://tanstack.com/workflow/latest/docs/overview))
- [Idempotent Workflow Steps](https://awesome-repositories.com/f/artificial-intelligence-ml/step-based-schedulers/step-execution-engines/idempotent-workflow-steps.md) — Wraps side effects in named, idempotent steps so the engine can replay them safely and skip completed work on resume. ([source](https://tanstack.com/workflow/latest/docs/overview))

### Part of an Awesome List

- [Typed Route Navigators](https://awesome-repositories.com/f/awesome-lists/devtools/routing-and-navigation/typed-route-navigators.md) — Provides fully typed Link, redirect, and navigate primitives that autocomplete paths and params. ([source](https://tanstack.com/router))
- [Build and Bundling](https://awesome-repositories.com/f/awesome-lists/devtools/build-and-bundling.md) — Produces separate optimized builds for client and server code using Vite or Rsbuild. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Schema and Type Utilities](https://awesome-repositories.com/f/awesome-lists/devtools/schema-and-type-utilities.md) — Ships schema utilities for defining typed collection schemas with runtime validation and type inference. ([source](https://tanstack.com/db/latest/docs/overview))

### Data & Databases

- [Application State Management](https://awesome-repositories.com/f/data-databases/application-state-management.md) — Provides a framework-agnostic state store with adapters for React, Vue, Angular, and other frameworks. ([source](https://tanstack.com/store/latest/docs/overview))
- [Optimistic Mutation Handlers](https://awesome-repositories.com/f/data-databases/optimistic-mutation-handlers.md) — Applies insert, update, and delete operations instantly to local state with automatic backend persistence. ([source](https://tanstack.com/db/latest/docs/overview))
- [Reactive Collection Queries](https://awesome-repositories.com/f/data-databases/typed-data-collections/reactive-collection-queries.md) — Loads data from typed collections using reactive live queries with joins, filters, and sorting. ([source](https://tanstack.com/db/latest/docs/overview))
- [Transactional Data Mutations](https://awesome-repositories.com/f/data-databases/transactional-data-mutations.md) — Supports building complex mutations with transactional optimistic updates and full lifecycle control. ([source](https://tanstack.com/db/latest/docs/overview))
- [Custom Collection Interfaces](https://awesome-repositories.com/f/data-databases/typed-data-collections/custom-collection-interfaces.md) — Exposes an interface for implementing custom collection types to integrate with the reactive store. ([source](https://tanstack.com/db/latest/docs/overview))

### Development Tools & Productivity

- [Custom Debug Panels](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/debugging-diagnostics/debugging-inspection-tools/debugging-and-inspection-tools/custom-debug-panels.md) — Ships a unified devtools shell that accepts custom panels for product-specific debugging alongside library inspectors. ([source](https://tanstack.com/devtools))
- [Single-Point Devtool Mounts](https://awesome-repositories.com/f/development-tools-productivity/devtool-extensions/single-point-devtool-mounts.md) — Attaches the debugging shell in a single location so panels are available without per-library setup. ([source](https://tanstack.com/devtools))
- [Project Scaffolding Templates](https://awesome-repositories.com/f/development-tools-productivity/project-scaffolding-templates.md) — Ships a CLI tool that scaffolds new projects from templates with optional add-ons. ([source](https://tanstack.com/cli/latest/docs/overview))
- [Execution Throttling](https://awesome-repositories.com/f/development-tools-productivity/execution-throttling.md) — Limits how often a function can fire within a time window, smoothing out rapid repeated calls. ([source](https://tanstack.com/pacer/latest/docs/overview))
- [Framework DevTools](https://awesome-repositories.com/f/development-tools-productivity/framework-devtools.md) — Ships a devtools shell that mounts across React, Vue, Solid, and other frameworks without rewriting panels. ([source](https://tanstack.com/devtools))
- [Framework-Specific Hooks](https://awesome-repositories.com/f/development-tools-productivity/hook-frameworks/framework-specific-hooks.md) — Reduces boilerplate with framework-specific hooks for debounced callbacks and throttled values. ([source](https://tanstack.com/pacer/latest/docs/overview))
- [Monorepo Package Builds](https://awesome-repositories.com/f/development-tools-productivity/package-managers/package-exports/monorepo-package-builds.md) — Generates consistent module formats, type declarations, and export configurations for every package in a monorepo. ([source](https://tanstack.com/config))
- [Pre-Release Validation](https://awesome-repositories.com/f/development-tools-productivity/package-managers/package-registries/package-publication/pre-release-validation.md) — Runs type checks, linting, tests, and publication validation before a release is allowed to proceed. ([source](https://tanstack.com/config))
- [Package Publishing Pipelines](https://awesome-repositories.com/f/development-tools-productivity/package-publishing-pipelines.md) — Versions, tags, and publishes packages to npm and GitHub using a standardized release workflow. ([source](https://tanstack.com/config))
- [Task Queues](https://awesome-repositories.com/f/development-tools-productivity/task-queues.md) — Orders function execution using FIFO, LIFO, or priority queues with configurable concurrency. ([source](https://tanstack.com/pacer/latest/docs/overview))
- [Workflow Schedulers](https://awesome-repositories.com/f/development-tools-productivity/workflow-schedulers.md) — Registers workflows to run on a fixed timetable using the runtime's scheduler and timer primitives. ([source](https://tanstack.com/workflow/latest/docs/overview))

### DevOps & Infrastructure

- [Unified Debugging Shells](https://awesome-repositories.com/f/devops-infrastructure/automation-orchestration/task-execution-frameworks/state-inspection-tools/runtime-state-inspectors/unified-debugging-shells.md) — Opens a single development panel aggregating inspectors for libraries and custom state. ([source](https://tanstack.com/devtools))
- [Universal Runtime Deployments](https://awesome-repositories.com/f/devops-infrastructure/direct-to-host-deployments/universal-runtime-deployments.md) — Packages applications for universal runtimes compatible with Vite or Rsbuild-based hosting. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Stale Cache Refetching](https://awesome-repositories.com/f/devops-infrastructure/remote-server-synchronization/server-state-synchronization/stale-cache-refetching.md) — Keeps local cache synchronized with the server by refetching data when it becomes stale or invalidated. ([source](https://tanstack.com/query/latest/docs/framework/react/overview))
- [Execution Rate Limiters](https://awesome-repositories.com/f/devops-infrastructure/execution-rate-limiters.md) — Restricts how many times a function can fire over a set period using fixed or sliding windows. ([source](https://tanstack.com/pacer/latest/docs/overview))
- [Execution State Controllers](https://awesome-repositories.com/f/devops-infrastructure/execution-rate-limiters/execution-state-controllers.md) — Provides start, stop, and persistence controls for queues and rate limiters with reactive state. ([source](https://tanstack.com/pacer/latest/docs/overview))
- [Workflow Signal Handling](https://awesome-repositories.com/f/devops-infrastructure/workflow-run-management/workflow-signal-handling.md) — Implements named signals that can be sent into running workflows to resume or control execution. ([source](https://tanstack.com/workflow/latest/docs/overview))

### Mobile Development

- [Server State Mutations](https://awesome-repositories.com/f/mobile-development/distribution-updates/over-the-air-updates/server-state-mutations.md) — Mutates data on the remote source and automatically refreshes the local cache to reflect the change. ([source](https://tanstack.com/query/latest/docs/framework/react/overview))

### Software Engineering & Architecture

- [Component Data Bindings](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/state-management/reactive-subscription-systems/component-state-bindings/component-data-bindings.md) — Provides hooks that bind reactive query results directly to component state with automatic lifecycle management. ([source](https://tanstack.com/db/latest/docs/overview))
- [Viewport-Based Renderers](https://awesome-repositories.com/f/software-engineering-architecture/item-visibility-control/viewport-based-renderers.md) — Renders only the elements currently within the scrollable viewport to maintain performance with large datasets. ([source](https://tanstack.com/stats/npm))
- [Client-Server Bundle Optimizations](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/build-bundle-optimization/client-server-bundle-optimizations.md) — Produces separate optimized bundles for client and server code automatically. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [List Virtualization](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/data-handling-throughput/large-dataset-optimizations/list-virtualization.md) — Renders only the visible portion of a large scrollable list, dramatically reducing DOM nodes and improving performance. ([source](https://tanstack.com/blog))
- [Durable Workflow Execution Engines](https://awesome-repositories.com/f/software-engineering-architecture/durable-workflow-execution-engines.md) — Executes an async function that pauses, persists its state to an event log, and resumes across process restarts without losing progress. ([source](https://tanstack.com/workflow/latest/docs/overview))
- [Execution Pausing](https://awesome-repositories.com/f/software-engineering-architecture/execution-pausing.md) — Pauses execution by throwing an internal sentinel and resumes by replaying the event log to reconstruct state. ([source](https://tanstack.com/workflow/latest/docs/overview))
- [Function Execution Utilities](https://awesome-repositories.com/f/software-engineering-architecture/function-execution-utilities.md) — Delays function execution until after a period of inactivity, ensuring only the final call runs. ([source](https://tanstack.com/pacer/latest/docs/overview))

### User Interface & Experience

- [Global State Managers](https://awesome-repositories.com/f/user-interface-experience/global-state-managers.md) — Manages shared application state in a single store accessible by any component. ([source](https://tanstack.com/store/latest/docs/overview))
- [Dynamic Item Layout Syncing](https://awesome-repositories.com/f/user-interface-experience/grid-layouts/item-positioning/dynamic-item-layout-syncing.md) — Adjusts each item's size on the fly as content loads or changes so the scroll container always knows the true layout. ([source](https://cdn.jsdelivr.net/gh/tanstack/virtual@main/README.md))
- [Dynamic Element Measurers](https://awesome-repositories.com/f/user-interface-experience/measurement-tools/dynamic-element-measurers.md) — Automatically adjusts item dimensions as content changes, supporting fixed, variable, and dynamic measurement modes. ([source](https://cdn.jsdelivr.net/gh/tanstack/virtual@main/README.md))
- [Dynamic Item Size Calculators](https://awesome-repositories.com/f/user-interface-experience/measurement-tools/dynamic-size-calculators/dynamic-item-size-calculators.md) — Measures each item on the fly and adjusts scroll calculations for content with varying heights or widths. ([source](https://tanstack.com/virtual))
- [Virtualized List Managers](https://awesome-repositories.com/f/user-interface-experience/scroll-areas/virtualized-list-managers.md) — Renders only the visible portion of a long list, grid, or table so the browser stays responsive even with thousands of items. ([source](https://tanstack.com/blog))
- [Virtualized Data Grids](https://awesome-repositories.com/f/user-interface-experience/virtualized-data-grids.md) — Renders only visible cells in a two-dimensional grid, keeping the DOM small regardless of total rows and columns. ([source](https://cdn.jsdelivr.net/gh/tanstack/virtual@main/README.md))
- [Bidirectional Virtualizers](https://awesome-repositories.com/f/user-interface-experience/virtualized-data-grids/bidirectional-virtualizers.md) — Provides a virtualizer that works in both vertical and horizontal directions for grid layouts. ([source](https://tanstack.com/virtual/latest/docs/introduction))
- [Reverse Sequence Rendering](https://awesome-repositories.com/f/user-interface-experience/virtualized-list-rendering/reverse-sequence-rendering.md) — Renders items appended to the top of a list while maintaining scroll position for real-time feeds like chat and logs. ([source](https://tanstack.com/virtual/latest/docs/introduction))
- [Bottom-Anchored Lists](https://awesome-repositories.com/f/user-interface-experience/bottom-anchored-lists.md) — Keeps the scroll position pinned to the bottom of a list as new items are added. ([source](https://tanstack.com/blog))
- [Horizontal Lane Virtualizers](https://awesome-repositories.com/f/user-interface-experience/horizontal-scrolling-utilities/horizontal-virtualization-utilities/horizontal-lane-virtualizers.md) — Ships a horizontal virtualizer for lane-based layouts such as calendar rows and kanban boards. ([source](https://tanstack.com/virtual))
- [Keyboard Shortcut Managers](https://awesome-repositories.com/f/user-interface-experience/keyboard-shortcut-managers.md) — Registers hotkeys with automatic default prevention, input filtering, and conflict detection. ([source](https://tanstack.com/hotkeys/latest/docs/overview))
- [Scroll Behavior Control](https://awesome-repositories.com/f/user-interface-experience/scroll-interaction-handlers/scroll-state-controllers/scroll-behavior-control.md) — Allows replacing the default scroll mechanism with a custom function for smooth scrolling effects. ([source](https://cdn.jsdelivr.net/gh/tanstack/virtual@main/README.md))
- [Scroll-to-Index Mappers](https://awesome-repositories.com/f/user-interface-experience/scroll-interaction-handlers/scroll-state-controllers/scroll-to-index-mappers.md) — Provides programmatic scrolling to any item by its index with configurable alignment. ([source](https://tanstack.com/virtual))
- [End-of-Stream Auto-Scrolling](https://awesome-repositories.com/f/user-interface-experience/scroll-interaction-handlers/scroll-state-controllers/scroll-to-index-mappers/end-of-stream-auto-scrolling.md) — Pins the viewport to the end of a dynamic list for chat and live-updating log UIs. ([source](https://tanstack.com/virtual))
- [Imperative Scroll Controllers](https://awesome-repositories.com/f/user-interface-experience/scroll-interaction-handlers/scroll-state-controllers/scroll-to-index-mappers/imperative-scroll-controllers.md) — Provides imperative control to scroll the viewport to a given offset or index with alignment. ([source](https://cdn.jsdelivr.net/gh/tanstack/virtual@main/README.md))
- [Index-Based Scroll Jumpers](https://awesome-repositories.com/f/user-interface-experience/scroll-interaction-handlers/scroll-state-controllers/scroll-to-index-mappers/index-based-scroll-jumpers.md) — Provides imperative scrolling to any row, column, or cell by index with alignment options. ([source](https://cdn.jsdelivr.net/gh/tanstack/virtual@main/README.md))
- [Scrolling Performance Optimizations](https://awesome-repositories.com/f/user-interface-experience/scrolling-performance-optimizations.md) — Optimizes scroll handling for iOS Safari and other mobile browsers to eliminate jank and enable smooth momentum scrolling. ([source](https://tanstack.com/blog))
- [Prepend-Stable Scroll Maintainers](https://awesome-repositories.com/f/user-interface-experience/stable-list-rendering/prepend-stable-scroll-maintainers.md) — Maintains scroll position when items are prepended to the top of a list, preventing disruptive jumps. ([source](https://tanstack.com/blog))

### Web Development

- [Reactive API Endpoints](https://awesome-repositories.com/f/web-development/backend-development/web-frameworks/routing-request-handling/asynchronous-api-routing/reactive-api-endpoints.md) — Creates backend routes that handle requests and return data, running alongside the frontend application. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Route Lifecycle Handlers](https://awesome-repositories.com/f/web-development/backend-development/web-frameworks/routing-request-handling/route-lifecycle-handlers.md) — Attaches pending, error, not-found, and code-splitting states directly to individual route definitions. ([source](https://tanstack.com/router))
- [Cache and Mutation Inspectors](https://awesome-repositories.com/f/web-development/cache-providers/cache-inspection-tools/cache-and-mutation-inspectors.md) — Reads live data from cache, route matches, and mutation queues through dedicated panels. ([source](https://tanstack.com/devtools))
- [Data Fetching & Caching](https://awesome-repositories.com/f/web-development/data-fetching-caching.md) — Provides a client-side cache that stores fetched server data and returns it instantly on subsequent requests. ([source](https://tanstack.com/query/latest/docs/framework/react/overview))
- [Server State Fetching](https://awesome-repositories.com/f/web-development/data-fetching-state-management/server-state-fetching.md) — Fetches data from a remote source and exposes loading, error, and success states to the UI. ([source](https://tanstack.com/query/latest/docs/framework/react/overview))
- [Full Page Server Rendering](https://awesome-repositories.com/f/web-development/full-page-server-rendering.md) — Generates complete HTML on the server for each request to improve initial load performance. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Full-Stack Frameworks](https://awesome-repositories.com/f/web-development/full-stack-frameworks.md) — Compiles both client and server code into optimized bundles for full-stack deployment. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Pre-Render Data Loaders](https://awesome-repositories.com/f/web-development/pre-render-data-loaders.md) — Runs route loaders in parallel and caches results to provide typed data before components render. ([source](https://tanstack.com/router))
- [Server-Side Endpoints](https://awesome-repositories.com/f/web-development/server-side-endpoints.md) — Ships a mechanism for defining server-side API routes alongside frontend code with type-safe communication. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Type-Safe API Clients](https://awesome-repositories.com/f/web-development/type-safe-api-clients.md) — Invokes type-safe remote procedures directly from client code with automatic serialization and error handling. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Workflow Event Log Subscriptions](https://awesome-repositories.com/f/web-development/browser-integration-utilities/dom-event-handling/event-driven-observers/workflow-event-log-subscriptions.md) — Subscribes to an append-only event log to track workflow events in real time. ([source](https://tanstack.com/workflow/latest/docs/overview))
- [Progressive Page Streamers](https://awesome-repositories.com/f/web-development/custom-page-frameworks/page-content-injections/progressive-page-streamers.md) — Sends page content to the browser progressively as it becomes available, so users see parts of the page before the full render finishes. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Progressive Page Streamers](https://awesome-repositories.com/f/web-development/full-page-server-rendering/progressive-page-streamers.md) — Streams page content to the browser progressively so users see parts before the full render. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Isomorphic Tool Definitions](https://awesome-repositories.com/f/web-development/isomorphic-logic-utilities/isomorphic-tool-definitions.md) — Declares a tool's input/output schema once and provides separate server or client implementations for AI runtime invocation. ([source](https://tanstack.com/ai/latest/docs/getting-started/overview))
- [Route Preloaders](https://awesome-repositories.com/f/web-development/request-routing/intent-based-routing/route-preloaders.md) — Starts loading route data early when the user hovers or scrolls, making the next page feel instant. ([source](https://tanstack.com/router))
- [Context Injection Hooks](https://awesome-repositories.com/f/web-development/request-validation-middleware/context-injection-hooks.md) — Provides middleware hooks for injecting shared data into the request context and page response. ([source](https://tanstack.com/start/latest/docs/framework/react/overview))
- [Schema-Based URL Validators](https://awesome-repositories.com/f/web-development/url-state-management/schema-based-url-validators.md) — Ships schema-driven validation and serialization for URL search parameters with full type inference. ([source](https://tanstack.com/router))
- [Real-time Sync Engines](https://awesome-repositories.com/f/web-development/websocket-integrations/real-time-sync-engines.md) — Streams real-time changes from databases or APIs into client-side collections using sync engines. ([source](https://tanstack.com/db/latest/docs/overview))

### System Administration & Monitoring

- [Configurable Batch Triggers](https://awesome-repositories.com/f/system-administration-monitoring/resource-batch-operations/configurable-batch-triggers.md) — Groups multiple operations into batches triggered by time, size, or custom conditions. ([source](https://tanstack.com/pacer/latest/docs/overview))
