&gt; The motivation behind MVVM appears to be to update the UI automatically when data changes. Modern frameworks are moving away from two-way data binding (React, Angular 2.0, Ember, etc.)<p>Angular still has ngModel according to its docs. Whether you have two-way binding or not, View Models are still useful. Cycle.js doesn&#x27;t have two-way binding but uses Event Streams and has a pattern that is similar to MVVM (they call it Model-View-Intent but the Model is a View Model by normal definition).<p>React not having something like MVVM makes it difficult to create reusable components. Most React apps are divided into the view layer (which are &quot;components&quot; but really just dumb views) and application logic which lives in the flux layer. This division means you can&#x27;t &#x2F; shouldn&#x27;t write components that fetch their own data.