# Virtual List

> A viewport-virtualized scrolling list that only mounts the rows currently on screen, so a list of thousands of fixed-height rows costs the DOM a small window instead of the whole dataset.

- Author: [bysages](https://21st.dev/@bysages)
- Library: bysages
- License: MIT
- Tags: Infinite Scroll, List
- npm dependencies: @bysages/core, @tanstack/react-virtual
- Live preview: https://21st.dev/@bysages/components/virtual-list

## Install

```bash
npx shadcn@latest add "https://21st.dev/r/bysages/virtual-list?api_key=$API_KEY_21ST"
```

Requires a 21st API key (generate one at https://21st.dev/mcp) passed as `API_KEY_21ST`. Free accounts get a limited number of installs per day; unlimited on a paid plan — see https://21st.dev/pricing.

Full component directory: https://21st.dev/llms.txt · More like this: https://21st.dev/community/components/s/infinite-scroll.md
