Angular Web Components: Custom Elements, Templates & Shadow DOM

- Description
- Curriculum
- FAQ
- Reviews
- Grade
Mastering Angular Web Components is a comprehensive course designed to teach you how to build reusable, encapsulated, and framework-agnostic UI components using Angular’s Web Component capabilities. This course bridges the gap between Angular development and modern browser-native Web Components, empowering you to create flexible elements that can work across different frameworks or even vanilla JavaScript environments.
You’ll start by understanding what Web Components are, their benefits, and how Angular supports them through the @angular/elements
package. From there, you’ll dive into creating Custom Elements with Angular, exploring how to manage inputs, outputs, and lifecycle hooks.
Next, the course covers Template and View Encapsulation, using Shadow DOM to isolate styles and behaviors, ensuring your components remain predictable and conflict-free. You’ll learn how to distribute content with slots, manage styling across different scopes, and optimize your components for performance and portability.
By the end of this course, you’ll be able to confidently package, publish, and use Angular-based Web Components in any environment—including React, Vue, or static HTML pages—making your UI library truly reusable and scalable.
-
1What Are Web Components?2h
History and specs: Custom Elements, Shadow DOM, HTML Templates, ES Modules.
-
2Why Use Web Components with Angular?This lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Reusability, encapsulation, interoperability with other frameworks.
-
3Setting Up Angular for Web ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Installing Angular Elements, polyfills, and configuring CLI.
-
4HTML Templates & Template TagThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Native template use, cloning, and rendering via JavaScript
-
5Working with Shadow DOMThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Encapsulation, style isolation, how it affects Angular component styling.
-
6Styling Web ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Using ::part, ::slotted, and :host, and defining global-safe CSS.
-
7Integrating Templates with Angular ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Passing projected content with ng-content, slots, and templates.
-
8Converting an Angular Component into a Custom ElementThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Using createCustomElement and NgElement.
-
9Bootstrapping Standalone Angular ElementsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Angular ElementModule, using Injector for DI
-
10Packaging Angular Elements for DistributionThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Build with Angular CLI, bundle with Webpack or Rollup
-
11Using Angular Custom Elements in Plain HTML/React/VueThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
CDN usage, registering custom tags, polyfill requirements
-
12Binding Inputs to Web ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Using properties, attributeChangedCallback, and @Input().
-
13Emitting Events from Web ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Native DOM events, using @Output() and EventEmitter
-
14Forms and Two-Way BindingThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Connecting Web Components to standard <form> elements
-
15Dynamic Loading of Angular ElementsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Lazy loading Angular components as custom elements.
-
16Web Component Lifecycle HooksThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
connectedCallback, disconnectedCallback, attribute watchers.
-
17Secure and Accessible Web ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
ARIA roles, focus management, and secure content handling.
-
18Performance TuningThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Bundle size, lazy load Angular, tree shaking, shadow DOM rendering tips.
-
19Cross-Framework Integration PatternsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.
Using Angular Elements in Vue, React, and legacy apps.
-
20Component Library with Angular Web ComponentsThis lesson is locked because you haven't completed the previous one yet. Finish the previous lesson to unlock this one.

What You’ll Learn:
-
Fundamentals of Web Components and browser-native APIs
-
Creating and packaging Custom Elements using Angular
-
Handling component inputs, outputs, and lifecycles
-
Using Shadow DOM for true style encapsulation
-
Building content projection with templates and slots
-
Deploying reusable components across projects or frameworks
-
Solid understanding of Angular (components, modules, lifecycle)
-
Familiarity with HTML/CSS/JavaScript
-
Basic understanding of the DOM
-
Angular developers (intermediate+)
-
Web developers transitioning to micro frontends or design systems
-
Engineers building reusable UI components across teams/projects
Archive
Working hours
Monday | 9:30 am - 6.00 pm |
Tuesday | 9:30 am - 6.00 pm |
Wednesday | 9:30 am - 6.00 pm |
Thursday | 9:30 am - 6.00 pm |
Friday | 9:30 am - 5.00 pm |
Saturday | Closed |
Sunday | Closed |