Sure, the promise of VDoms is performance. And vDOM has improved DOM performance a lot. But also not nearly enough to support the complexity of most real life applications that handle a decent amount of data (say, 1000 visible components at the same time). That is the reason why frameworks based on immutability and PureRenderMixin (such as Redux) were able to gain popularity in React in the first place. They solved largely this performance issue (and not vDOM in itself)<p>Just scan through my blog <a href="https:&#x2F;&#x2F;www.mendix.com&#x2F;tech-blog&#x2F;making-react-reactive-pursuit-high-performing-easily-maintainable-react-apps&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.mendix.com&#x2F;tech-blog&#x2F;making-react-reactive-pursu...</a> to see how naively fully re-rendering your application upon each change makes your application an order of magnitude(!) slower.<p>Data size isn&#x27;t usually an issue for MobX. The reason for that is that it will automatically suspend all derivations which are not actively in use somewhere (in other words, not visible currently in the screen). We have full blown visual editors that have hunderd thousands observables in memory. Nonetheless they are fast enough to perform drag and drop actions using observables, where not only the dragged item is being moved, but also all the connectors connected to it, as they observe the item being dragged.