On the one hand, you can write a JavaScript app just straight forward and equip events with the most fancy effects, e.g. fade in a new node or fade out a no longer needed one. On the other hand, you can employ the MVC pattern where the view is being updated based on the data model. Obviously, in the latter case, transitions and animations cannot be realized as easily as in the first case. So I'm wondering what's the right way to apply CSS transitions and animations within a JavaScript app realized upon the MVC pattern.