With today’s modern JavaScript frameworks, we are used to the fact that when the application state changes, the DOM is updated automatically. But how do the frameworks detect state changes, and how do they efficiently propagate the changes through the system? Evan answers these questions based on his experience building Vue.js.