The problem? Too much boilerplates and a little bit tedious. In fact, most part of the above steps could be simplified. Like, create actions and reducers in a single method, or dispatch both sync and ...