I have played with React.js for a while now. One way dataflow, virtual DOM diffing, JavaScript components instead of HTML templates – this all seems to make a lot of sense. The small todo list style prototypes I have built work extremely well, are conceptually easy to grasp and are super fast. My lingering concern has been hidden complexity as one moved into a real world app where components had deeper levels of inter-connectivity. Bonnie Eismann’s article on the Codecademy React buildout has been particularly useful in explaining how the Codecademy team dealt with dataflow across and up the component tree and how their homegrown solution compares to using something like Flux.
You can also watch her talk at React.js Conf here: