When working on complex front-end applications the need arises to clearly separate the state and the data of the app. What if some action can only be performed if some conditions are met? Or some action must be automatically performed in a particular scenario? Implementing such apps from scratch is error prone and... painful. In this talk I will show how to model front-end applications using state machines, and how that modelling translates directly to code using redux-sigma, a library built on top of redux and redux-saga.