A long list stays fast, because only what the reader can see exists.
A list of units, a stage and a map beside it. The real @laticent/veduta core decides which units to mount and at what quality; this page mounts exactly those and nothing else. Drag the size to 100,000: the cost does not move.
Arrow keys, Home and End move the focus when the stage is focused; click a tile to jump. The map is a real virtual list: its tiles are created and removed as the core's answer changes, so the document holds a few dozen elements whether there are 120 units or 100,000.