Back to Explore

TanStack/virtual

GitHub
63 updates · last 90 days1 watchersOpen source

Last release:

TanStack Virtual is a headless, framework-agnostic JavaScript/TypeScript library for virtualizing large element lists, grids, and tables in React, Solid, Vue, and Svelte. It helps you render only visible items and achieve smooth scrolling performance, while giving you full control over your markup and styles.

Project status

  • The TanStack/virtual ecosystem appears actively maintained, with multiple “updates” across framework adapters and virtual-core pushed on 2026-08-18, and additional adapter updates on 2026-07-28.
  • The apparent update cadence is fairly steady, most recently about 3 weeks between notable update batches (late July to mid August 2026), suggesting an ongoing maintenance stream rather than sporadic releases.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • @tanstack/angular-virtual@6.0.3

    Release @tanstack/angular-virtual@6.0.3 is described as a patch release that only updates its dependency @tanstack/virtual-core to 3.17.8. The provided diff, however, shows many repository-level version bumps in example apps and benchmarks, plus a README media URL update.

  • @tanstack/marko-virtual@3.15.1

    This is a patch release of @tanstack/marko-virtual. The only documented change is an update to its dependency @tanstack/virtual-core.

  • @tanstack/lit-virtual@3.13.37

    This is a patch release of @tanstack/lit-virtual with no directly documented code changes in the release notes. The primary change is an update to its dependency on @tanstack/virtual-core to version 3.17.8.

  • @tanstack/svelte-virtual@3.13.36

    This patch release updates the underlying TanStack virtual dependency. No other functional changes are described in the release notes.

  • @tanstack/virtual-core@3.17.8

    This patch release focuses on scroll observer cleanup and measurement robustness in @tanstack/virtual-core. It prevents the internal isScrolling state from getting stuck when the scroll observer is torn down and improves handling of measurement nodes that no longer match the current item count.

  • @tanstack/react-virtual@3.14.10

    This is a patch release of @tanstack/react-virtual that updates its dependency on @tanstack/virtual-core. No direct API or behavioral changes are described in the release notes.

  • @tanstack/vue-virtual@3.13.36

    This is a patch release of @tanstack/vue-virtual 3.13.36. The only documented change is an update to the underlying @tanstack/virtual-core dependency (to 3.17.8).

  • @tanstack/solid-virtual@3.13.37

    This release is a patch update for @tanstack/solid-virtual. It updates the underlying @tanstack/virtual-core dependency to version 3.17.8, which may include internal fixes or behavioral adjustments carried into solid-virtual.

  • @tanstack/marko-virtual@3.15.0

    This release focuses on completing Marko adapter option parity for both the tags (including scroll and RTL related options), and improving generated type support for handle types. A patch fix also ensures the published tags build always produces dist/tags, preventing downstream TypeScript compilation failures due to missing generated files.

    Features
  • @tanstack/react-virtual@3.14.9

    This is a patch release of @tanstack/react-virtual that updates its dependency on @tanstack/virtual-core to version 3.17.7. No new features or behavioral changes are described in the release notes, so the upgrade risk is expected to be low.

  • @tanstack/angular-virtual@6.0.2

    Release @tanstack/angular-virtual@6.0.2 is described as a patch update that only bumps @tanstack/virtual-core. However, the provided code diff includes substantial, potentially breaking changes to the Marko adapter/docs usage patterns that are not mentioned in these release notes.

  • @tanstack/vue-virtual@3.13.35

    This is a patch release of @tanstack/vue-virtual that updates its dependency on @tanstack/virtual-core. No direct API or behavioral changes are described in the release notes.

  • @tanstack/svelte-virtual@3.13.35

    This is a patch release of @tanstack/svelte-virtual that updates a dependency. No code-facing changes or behavioral modifications are described in the release notes.

  • @tanstack/solid-virtual@3.13.36

    This release is a patch update for @tanstack/solid-virtual. The only change called out in the release notes is an updated dependency on @tanstack/virtual-core, which may include fixes or behavior changes from that upstream package.

  • @tanstack/virtual-core@3.17.7

    This patch fixes a visual glitch in @tanstack/virtual-core where scrolling up could produce a one-frame viewport jump when above-viewport rows resize. The fix adjusts when resize notifications are dispatched so the scrollTop update and item transform updates commit in the same paint frame, preventing the content from jerking and snapping back.

  • @tanstack/lit-virtual@3.13.36

    This patch release updates @tanstack/lit-virtual to 3.13.36 with a dependency bump. The only noted change is updating @tanstack/virtual-core to version 3.17.7.

  • @tanstack/virtual-core@3.17.6

    This patch updates the default scroll-adjustment heuristic to prevent scroll drift when an item spans the viewport and grows below the fold. Re-measurements now only compensate items that are entirely above the fold, reducing token-by-token scrollTop changes for expanding cross-fold content.

  • @tanstack/react-virtual@3.14.8

    This patch fixes a visual scrolling gap that could appear at the top of the list after an end-anchored prepend when using `directDomUpdates` mode. It also bumps `@tanstack/virtual-core` to v3.17.6.

  • @tanstack/svelte-virtual@3.13.34

    This is a patch release of @tanstack/svelte-virtual. The only change noted in the release notes is an update to its dependency, @tanstack/virtual-core to version 3.17.6.

  • @tanstack/lit-virtual@3.13.35

    This patch release updates a single internal dependency, @tanstack/virtual-core, to version 3.17.6. No new features or behavioral changes are described in the release notes.