Virtual Scrolling: Rendering millions of messages without lag
Displaying a large amount of messages in a list can destroy the performance of an application. The naive approach to displaying these messages would be to render each message as a DOM element (in a webpage context). But this quickly degrades the performance, since the browser needs to spend all its time laying out these elements, repainting them during scrolling and holding the huge list of DOM nodes in memory.
Chat apps, log message visualizers and various other applications all face this problem. Today, we are going to take a look how we solved this in Kreya.