React.js for Noobs Part II: Flux

This post is a continuation of my earlier React.js for Noobs post; if you haven’t read it already, first go through it before continuing with this article. React is a library to manipulate the web page DOM, and, when building a complex web app, it is paramount to manage the state of the application as most of the time React components want to talk with each other.
If all the components start to talk with each other, the whole app will be a mess and debugging an issue will be a nightmare. Hence, Flux can be used to make our lives easier. Flux is a data unidirectional architecture pattern. It is mostly a concept, rather than an implementation. First, let’s get a good conceptual understanding of what Flux is and later on move on to an example implementation to get hands-on experience.