Advanced Components


1. Introduction


2. Build a Reactivity System


3. Evan You on Proxies


4. Reactivity in Vue.js


5. Evan You on Vue Core


6. Template Compilation


7. Evan You on the Virtual DOM


8. Functional Components


9. Evan You on Functional Components


10. The Mounting Process


11. Evan You on the Mounting Process


12. Scoped Slots & Render Props



In my Advanced Components course it is my goal to help you get better at using the full functionality of Vue, debugging your applications, extending Vue functionality, and perhaps even contributing to the Vue project itself. In the first few lessons we will:

  • Learn how to Reactivity works
  • Where Reactivity lives in the Vue.js source
  • How template compilation works
  • How to create render functions
  • How to use functional components
  • How the internal mounting process works
  • How to use render props & scoped slots
  • Cover other design patterns and techniques

It all starts with the deciphering of this document:

What makes this course better than others?

Good question! I think it’s the icons and the animations. Lots of coding courses have you staring at their code editor. I love figuring out creative ways to use diagrams, icons, and animation to make hard-to-learn topics accessible to anyone.

Just look at this animation:

Plus at the end of each video you’ll see my out-takes, to get a good laugh at how badly I screw up when creating these videos.


You need to be comfortable with both Vue.js and JavaScript to take this course.

This course is not:

An introduction to Vue or for non-programmers.

This course is:

Some of my best work, pulling from everything I learned from Code School teaching code to try to make hard-to-learn subjects much easier to explain.

Yes, this is a paid course

This course requires a Vue Mastery subscription to watch, which is how we’ll be able to afford to create useful weekly content now and into the future. It’s just $19/month and $5 of your monthly subscription goes directly to the Vue.js project. So by becoming a member, you’re supporting Open Source.

I hope you choose to join me.