How to Structure Your MobX App for the Real World

This article is a spiritual successor to Adding MobX to a vanilla React project, inspired by many of @mwestrase’s articles, and comes from a few weeks of refactoring a big Backbone app into a React+MobX app. It might not be the way to structure a MobX app, but it’s a way, and it’s been working well for me so far.
Design goals for this architecture are: