vssvelte-tiny-virtual-list.
svelte-tiny-virtual-list is older, tiny, and flexible. Svelte Virtual List is built around Svelte 5 ergonomics.
at a glance.
svelte-tiny-virtual-list is a dependency-free virtual list inspired by react-tiny-virtual-list. It supports fixed or variable item sizes, horizontal lists, scroll-to-index props, header and footer slots, and a recomputeSizes method. @humanspeak/svelte-virtual-list targets Svelte 5 directly with snippets, dynamic measurement, SSR, and a smaller set of modern list-feed primitives.
side-by-side.
Every surface that matters, compared without spin.
| feature | @humanspeak/svelte-virtual-list | svelte-tiny-virtual-list |
|---|---|---|
| Svelte 5 snippets | yes | no |
| Dynamic measured heights | yes | Explicit sizes / recompute |
| Variable sizes from array/function | no | yes |
| Horizontal lists | no | yes |
| Infinite scroll helpers | yes | Footer slot pattern |
| Programmatic scroll to index | yes | yes |
| Runtime dependencies | 0 | 0 |
where each shines.
- +Svelte 5-native component API with snippets and TypeScript generics
- +Dynamic height measurement without requiring a size map up front
- +Built-in infinite loading hooks for feed and pagination workflows
- +Imperative scroll method with index and alignment control
- +SSR-friendly package for SvelteKit apps
- +Zero runtime dependencies and MIT licensed
- +Automatic measurement suits content whose height changes after render
- +Modern Svelte 5 snippet API
- +Small and dependency-free
- +Supports fixed, variable, vertical, and horizontal modes
- +Header and footer slots are useful for wrappers and loaders
- +Mature package with a long release history
where each falls short.
- −Focused on vertical lists, not grids or masonry layouts
- −Requires Svelte 5
- −Newer package with a smaller ecosystem than older virtualizer projects
- −API predates Svelte 5 snippets
- −Variable sizes are primarily supplied by itemSize data or recomputeSizes
- −Infinite loading is composed through external footer patterns
the honest call.
Choose svelte-tiny-virtual-list when you need horizontal mode or explicit item-size control in an older slot-style Svelte component. Choose @humanspeak/svelte-virtual-list for Svelte 5 snippet ergonomics, automatic dynamic height measurement, SSR-friendly docs, and built-in infinite loading behavior.
read more.
Every head-to-head, with the same matrix + pros / cons + verdict format.
TanStack Virtual is a powerful headless virtualizer. Svelte Virtual List is the smaller Svelte-first component.
read comparison ↗virtua is a zero-config multi-framework virtualizer. Svelte Virtual List is narrower and Svelte-specific.
read comparison ↗The legacy Svelte package proved the pattern. Svelte Virtual List modernizes it for Svelte 5.
read comparison ↗The full /compare index — every head-to-head in one place.
browse all ↗svelte virtual list → install in 30 seconds