When I first started using Vue, I fell in love because of how easy it made it to do what quickly turned into a mess with jQuery, like dynamically adding fields to a form or showing a loading state while firing off an AJAX request.
Advanced Vue Component Design
Advanced Vue Component Design is a 34-lesson 3 hours 57 minutes self-paced course by Adam Wathan. When I first started using Vue, I fell in love because of how easy it made it to do what quickly turned into a mess with jQuery, like dynamically adding fields to a form or showing a loading state while firing off an AJAX request.
Course facts
- Lessons
- 34
- Duration
- 3 hours 57 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- Adam Wathan
- Price
- Premium
Three years later I’ve realized that Vue solves a lot of hard problems that I never expected it to solve, like:
- Keeping logic portable and encapsulated, even when it interacts with disconnected parts of the DOM
- Completely customizing how a component looks without a bunch of CSS overrides or complex configuration options
- Making it easy to simulate desperately needed browser features like element queries, without waiting another 5 years for support
Advanced Vue Component Design takes everything I know about using Vue to build more than basic UI widgets and bundles it up into one comprehensive course that you can work through in an afternoon.
The full course clocks in at 34 lessons totaling 4 hours of content.
It covers topics like:
- Building custom controlled components
- Strategies for keeping logic encapsulated and making components more portable
- Using composition to extend components instead of mixins or inheritance
- How and why to use render functions, even if you aren’t using JSX
- Using data provider components to reuse non-UI logic
- Creating renderless components that are completely customizable
- Designing compound components using Vue’s provide and inject features
- Real-world case studies on building robust sortable list and search select components
Who teaches Advanced Vue Component Design? Adam Wathan
Adam Wathan is the creator of Tailwind CSS — the utility-first CSS framework that has reshaped how front-end engineers write styles since its 2017 release. He is also a co-founder of Tailwind Labs (the company behind Tailwind CSS, Tailwind UI, Headless UI, and Heroicons), the host of the Full Stack Radio podcast, and the author of Refactoring UI (with Steve Schoger).
His paid course catalog covers Tailwind CSS in depth (the framework's design philosophy, advanced patterns, plugin authoring), the broader modern CSS landscape, refactoring patterns for UI work, advanced Vue.js (he was a long-running Vue advocate before Tailwind became the primary work), Test-Driven Laravel, and the design-engineering boundary material that bridges UI design and front-end implementation.
The CourseFlix listing under this source carries 5 Adam Wathan courses spanning that range. Material is paid; Adam's courses are sold individually on adamwathan.me on the original platform. Courses are aimed at developers and designers serious about the craft of building interfaces.
What lessons are included in Advanced Vue Component Design?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Building Controlled Components Demo | 12:22 | |
| 2 | Customizing Controlled Component Bindings | 01:28 | |
| 3 | Wrapping External Libraries | 12:46 | |
| 4 | Encapsulating Behavior: Global Events | 11:57 | |
| 5 | Encapsulating Behavior: Direct DOM Manipulation | 08:09 | |
| 6 | Encapsulating Behavior: Portals | 14:04 | |
| 7 | Encapsulating Behavior: Reusing Portals | 03:33 | |
| 8 | Injecting Content Using Slots | 06:11 | |
| 9 | Native-Style Buttons Using Slots and Class Merging | 01:48 | |
| 10 | Extending Components Using Composition | 10:23 | |
| 11 | Passing Data Up Using Scoped Slots | 09:59 | |
| 12 | Render Functions 101 | 03:31 | |
| 13 | Render Functions and Components | 04:19 | |
| 14 | Render Functions and Children | 02:21 | |
| 15 | Render Functions and Slots | 04:00 | |
| 16 | Data Provider Components | 11:55 | |
| 17 | Getting Started with Renderless Components | 04:47 | |
| 18 | Passing Data Props | 02:14 | |
| 19 | Passing Action Props | 02:20 | |
| 20 | Passing Binding Props | 09:41 | |
| 21 | Using Functions as Binding Props | 03:06 | |
| 22 | Implementing Alternate Layouts with Renderless Components | 04:08 | |
| 23 | Configuring Renderless Components | 01:47 | |
| 24 | Wrapping Renderless Components | 06:10 | |
| 25 | Building an Element Query Component | 07:45 | |
| 26 | Compound Components and Provide/Inject | 09:56 | |
| 27 | Building a Compound Sortable List Component | 21:18 | |
| 28 | Building a Search Select: Data Bindings | 06:03 | |
| 29 | Building a Search Select: Filtering | 05:04 | |
| 30 | Building a Search Select: Focus Management | 02:42 | |
| 31 | Building a Search Select: Making It Controlled | 05:40 | |
| 32 | Building a Search Select: Keyboard Navigation | 14:53 | |
| 33 | Building a Search Select: Click Outside Component | 05:12 | |
| 34 | Building a Search Select: Integrating Popper.js | 05:47 |
Get instant access to all 33 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to Advanced Vue Component Design?
-
Updated 2y agoReusable Components
By: Michael ThiessenMaster the art of writing highly reusable Vue — and make the most of your components. Reusable Components is all about how to make your components more flexible4h 10m5/5 -
Updated 11mo agoMastering Nuxt, 2025 Edition
By: Mastering Nuxt, Michael ThiessenMastering Nuxt: Full Stack Unleashed - 2025 Edition is not just a course, but an extensive step-by-step guide to modern Nuxt.7h 36m5/5 -
Updated 2y agoBuild an Image Filters App with Vue, TypeScript and WebAssembly
By: Zero To MasteryWith this project you'll build "Vue Filters", an image filter application built with Vue that allows you to bring the experience of applying Photoshop filters t1h 44m