&gt;<i>I am not even sure it is possible to do what I want using JS and current technology.</i><p>It should doable just fine, but it seems like you expect the front end to handle millions of nodes? You should aggregate at various levels, and present sliding windows instead...