tuil
ReferencePackages

@mwillbanks/tuil-virtual

Terminal-aware virtual lists and viewport primitives for tuil.

View rawEdit

Overview

Terminal-aware virtual lists and viewport primitives for tuil.

@mwillbanks/tuil-virtual is independently installable and also participates in the umbrella @mwillbanks/tuil runtime where applicable.

Installation

npm install @mwillbanks/tuil-virtual

How it operates

Terminal virtualization adapts TanStack Virtual measurements to rows and columns, returning visible indexes, overscan, before/after space, and fixed-width text fitting.

Documentation flow diagram. measure viewport; project range; render visible rows; remeasure; S0 leads to S1; S1 leads to S2; S2 leads to S3
Documentation flow diagram. measure viewport; project range; render visible rows; remeasure; S0 leads to S1; S1 leads to S2; S2 leads to S3

API

APISignatureDescription
getVisibleTerminalIndexesfunction getVisibleTerminalIndexesPublic function getVisibleTerminalIndexes.
TerminalVirtualizerOptionsinterface TerminalVirtualizerOptionsPublic interface TerminalVirtualizerOptions.
TerminalVirtualRangeinterface TerminalVirtualRangePublic interface TerminalVirtualRange.

Events and lifecycle

Virtualization is pure or subscription-driven at the component layer; no global events are emitted.

All subscriptions and registrations return a disposer or belong to an owning runtime that disposes them in reverse order.

Example

const range = useTerminalVirtualizer({ count: 10_000, viewportSize: 20, scrollOffset });

On this page