Vue 3's reactivity isn't magic. It's an automated observer pattern you can build from scratch using native JavaScript Proxies and Reflect.
#1about 1 minute
Understanding the core concept of reactivity
Reactivity is explained as an automated observer pattern that listens for changes and notifies the system to update where needed.
#2about 2 minutes
Exploring the core technologies behind Vue 3 reactivity
Vue 3's reactivity system is built on native JavaScript features like Proxies, Set, Map, WeakMap, and Reflect.
#3about 3 minutes
Using ES6 proxies to intercept object operations
ES6 Proxies wrap a target object, allowing you to intercept operations like property access (get) and modification (set) using a handler.
#4about 3 minutes
Structuring dependency tracking with maps and sets
A nested data structure using WeakMap, Map, and Set is used to efficiently store dependencies from target objects to their properties and effects.
#5about 4 minutes
The roles of the track and trigger functions
The `track` function registers an effect as a dependency, while the `trigger` function executes all registered effects when a property changes.
#6about 7 minutes
Implementing a manual observer pattern from scratch
A simple observer pattern is built using `track` and `trigger` functions, demonstrating the need for manual calls to update state.
#7about 8 minutes
Automating tracking and triggering with proxy traps
The manual `track` and `trigger` calls are automated by placing them inside the `get` and `set` traps of an ES6 Proxy handler.
#8about 5 minutes
Refactoring proxy logic into a reusable reactive function
The proxy creation logic is encapsulated within a `reactive` function to easily convert any plain JavaScript object into a reactive proxy.
#9about 4 minutes
Managing effect scope with an active effect wrapper
An `activeEffect` variable and a wrapper function are used to ensure that dependencies are only tracked for the effect that is currently executing.
#10about 4 minutes
Connecting the custom reactivity engine to the DOM
The custom-built reactivity engine is used to automatically update the DOM in response to state changes, demonstrated with buttons and a color picker.
#11about 4 minutes
Answering questions on reactivity and browser support
The speaker addresses audience questions regarding React's hook-based approach, preventing duplicate effect registrations, and Vue 3's lack of support for IE11.
Related jobs
Jobs that call for the skills explored in this talk.
The HTML Elements That You’re Probably Over-EngineeringAs frameworks have become more and more commonplace in the world of web development, so too has the over-engineering of features made possible by our humble old friend, HTML.
The mental models that come with using state management in React, Vue and o...
Daniel Cranney
Dev Digest 202: The Vibe Coding Trap, Hacking Discord and How Browsers WorkInside last week’s Dev Digest 202 .
🗣️ A look behind the scenes how we organise the WeAreDevelopers World Congress
🙅 Vibe coding is a trap
🟪 How to hack discord
⚔️ Building defensive AI agents
📘 The consise TypeScript book
😄 Web development is fun a...
SciChart
The Fastest JavaScript Charts - Built for React and BeyondFor most developers, browser charting works fine — until it doesn’t. Once you push beyond tens of thousands of points, add live streaming, or need advanced interactions, the story changes: frame drops, frozen dashboards, memory issues.
That’s where S...
Daniel Cranney, Chris Heilmann
Dev Digest 215: Agent Memory, JS2026, Googlebot Analysis & Canvas❤️HTMLInside last week’s Dev Digest 215 .
🗿 Make AI talk like a caveman
🧠 A guide to context engineering for LLMs
🤖 Simon Willison on agentic engineering
🔐 Axios supply chain attack post mortem
🛡️ Designing AI agents to resist prompt injection
🎨 HTML in c...
From learning to earning
Jobs that call for the skills explored in this talk.