Made a 5,000-row dashboard feel instant
The ledger dashboard locked up rendering 5,000+ rows; support tickets called it "frozen".
Restore responsiveness without changing behavior or breaking the export path.
Introduced row virtualization, memoized the expensive cells, code-split the charts, and lazy-loaded the export module.
First paint p75 5.2s → 2.1s, 40% fewer renders, Lighthouse 61 → 94.