05 / 20Data & performance
100k-Row Data Grid
Sort, filter, resize and edit 100,000 rows at 60fps with a hand-rolled virtualized grid.
- Virtualization
- Rendering performance
- Keyboard grid nav
- Web Workers
stirling.lab/data-grid Live demo
Loading demoβ¦
What to notice
- Only visible rows and columns mount; scroll stays smooth with 100k rows
- Multi-column sort and typed filters run off the main thread in a Web Worker
- Resizable, reorderable, pinned columns; inline cell editing
- Spreadsheet-style keyboard navigation with aria-rowcount/colindex semantics
How it's built
- Windowing math is O(1) per frame using fixed row height and overscan.
- Columns are copied to the worker once; sorts come back as zero-copy index arrays, measured at about 20ms for 100k rows.
Hand-built in React 19 + TypeScript, with no UI or chart libraries.