Skip to content
Engineering Lab

05 / 20Data & performance

100k-Row Data Grid

Sort, filter, resize and edit 100,000 rows at 60fps with a hand-rolled virtualized grid.

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.