inokawa/virtua
A zero-config, fast and small (~3kB) virtual list (and grid) component for React, Vue, Solid, Svelte and Angular. observed · 2026-08-28
Health v2 · maintenance only
95/100
- Activity 99
- Release rhythm 87
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 3
- age_days: 1422
- days_rel: 9
- days_push: 8
- n_releases_24m: 82
Adoption not part of the score
3728 stars · 114 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
Virtua is a zero-config, fast, and small (~3kB gzipped) virtual list and grid component library for React, Vue, Solid, Svelte, and Angular. It handles dynamic size measurement, reverse scrolling, iOS quirks, and other hard virtualization problems out of the box.
Use cases
- render a virtualized list of thousands of rows in React
- add infinite scrolling to a long feed without frame drops
- virtualize a grid of variable-height cards in Vue
- build a performant chat log with reverse scrolling
- display large tabular data with sticky headers and keyboard navigation
- replace react-window with a smaller multi-framework alternative
When to choose
- you need virtual scrolling across multiple frameworks (React, Vue, Solid, Svelte, Angular)
- you want zero-config handling of dynamic item sizes and scroll restoration
- bundle size matters and you want a ~3kB tree-shakeable library
- you need features like RTL, horizontal scrolling, DnD, or sticky items in a virtual list
When to avoid
- you need virtualization outside the browser (e.g., native mobile lists)
- you require legacy browser support without ResizeObserver and cannot add a polyfill
- your lists are short enough that virtualization adds unnecessary complexity
Facets
library · maturity active
ui-components frontend-framework web-development frontend performance browser cross-platform virtualization virtual-list virtual-scroll infinite-scroll windowing react vue solid svelte angular zero-config small-bundle web-server
2 sources
- readme: https://github.com/inokawa/virtua · fetched 2026-08-28 · 1bf6604db5e3
- homepage: https://inokawa.github.io/virtua/ · fetched 2026-08-29 · e2fbed70c055
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| inokawa/virtua | main | 95 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem