nice flowchart, i know the point of redux but man the boilerplate needed to create a component sucks:<p><pre><code>  class _MyActualComponent extends React.Component&lt;reduxScafolding.Action &amp; { myReduxState: reduxScafolding.ReduxState; pushPath: ReduxSimpleRouter.pushPath; } &amp; { myActualProp: string; }, {}&gt;{
  &#x2F;&#x2F;my component&#x27;s implementation goes here.
  }

  &#x2F;** type for casting (so consumers know the props they are required to pass *&#x2F;
  class IMyComponentVisibleType extends React.Component&lt;{ myActualProp: string; }, {}&gt; { };

  &#x2F;** instrument my component with redux *&#x2F;
  export var MyComponent = ReactRedux.connect(
  (reduxStoreState) =&gt; { &#x2F;&#x2F;subscripbe to reduxStore updates (Called every change). 
      return { myReduxState: reduxStoreState.myReduxState }; &#x2F;&#x2F;map myReduxState to props
  }
  , _.merge({}, {}, { pushPath: ReduxSimpleRouter.pushPath }, reduxScafolding.action) as any  &#x2F;&#x2F;redux-binds, then includes the pushPath() method for use in our _App Component
  )(_MyActualComponent) as any as typeof IMyComponentVisibleType;
</code></pre>
ps: yes, about 3 lines of that is because I use Typescript.