It can seem like a daunting task when you start to model the client state for your React Application with MobX. An idea that can help you on this journey is the simple realization that your application is just a collection of features, composed together to form a cohesive unit. By starting with the simplest feature, you can string the rest of the app together, one feature at a time.
This style of thinking guides you to model your feature-level-stores first. The app-level-store (also called the Root Store) is just a composition of these feature stores with a shared communication channel. In the MobX world, you start with a class to describe the feature store. Depending on the complexity, you can break the feature store into many sub stores. The feature store acts as the coordinator of all the sub stores. This is the classic divide and conquer approach to modeling...