In this way, it seems that React makes a lot of sense as a migration path.  Honestly, I find flux&#x2F;redux and other unidirectional data flows are much easier to scale than most patterns for UI development, especially class&#x2F;oo ones.<p>That said, React is just a part of it, and some flows are counter-intuitive in React.  This must be said because it is true... that said, I find that React is far better, all around than most of the other options I&#x27;ve used, and I&#x27;ve been building web apps for two decades now.<p>I&#x27;m currently working on supporting an Angular 1.x app, have a proof of concept built in Redux+React, and another app I&#x27;ve been instructed to write in Angular 2.  I&#x27;ve also built a couple of SPAs using Backbone.  In the end the Redux flow has meant less code as features are added, and I&#x27;m working towards writing my Angular 2 app with that in mind.  Modern React takes a lot of tooling setup to get started (or starting with someone&#x27;s existing boilerplate), but the shear amount of boilerplate code that you have to write with Angular2 is just unnerving.  The DI model is awkward, and I&#x27;m not enjoying it at all...<p>The Redux+React proof of concept is for half the functionality of the Angular 1.x app, I&#x27;m pushing for the change in the next version... with about 1&#x2F;3 the functionality, the code is 1&#x2F;10th the size, and there&#x27;s a lot less complexity...  A single state tree, in the end is easier to reason with, even if you&#x27;re only looking at part of it.  It&#x27;s much easier to deal with, even with scale than trying to add more message channels in an application between components.  Getting used to separating actions via a single dispatcher, and the resulting state changes takes getting used to... but so much easier in the end.