Like many of these types of articles, it really feels like most of the ng2 v react articles are written by people who are mostly used to angular and moving towards 2, while looking into react. As to DI.. really, the context that gets passed down is the convention for this, as needed. It's how the react-redux injects the state and actions from the store, how router passes itself down to routes/links, and how tools like material-ui access theming information. Beyond those cases, you really shouldn't *need* DI, there are tools like rewire for babel, and others (proxyquire, etc) that provide injection for testing purposes. React + Redux + fetch, are pretty much all you need in terms of "framework", there's also webpack, babel, and some css solution (react-jss, sass-loader, or similar) ymmv.