← all demos

outlay

Virtual Scroll

Ten thousand rows of wrapped text, every row a different height. outlay lays out the entire 10,001-node list in one solveLayout call — every row's y and height below comes from the solver, not from the DOM. Text heights feed in through the measureContent contract, supplied here by @chenglou/pretext. Because every position is known before the first paint, only the rows in view are ever mounted, and there are no height estimates and no scroll-jump corrections.

Re-answers "height and position of every row" both ways: outlay from the tree, the DOM by mounting a throwaway off-screen copy of all 10,000 rows and forcing a reflow. Nothing on this page changes.