Skip to content
UdemyAngularPaid courseIntermediate levelCertificate

Angular Advanced MasterClass & FREE E-Book (Udemy.com)

Build Your Own Library, Learn Advanced Angular Features

Created by: Angular University

Last updated September 2026

icon
What you will learn

  • Code in Github repository with downloadable ZIP files per section
  • Learn the most advanced features of Angular
  • learn how to how to build open source Angular libraries
  • Component API Design
  • Component Styling best practices
  • Templates and Template Outlets, ng-content, ng-container, style isolation and customization
  • AOT, global events, debugging with the CLI, @ViewChildren, @ContentChildren
  • Light DOM vs Shadow DOM, @HostBinding, @HostListener, dynamic components
  • Directives, handling keyboard events, testing, animations and more

How it compares

Against the other 95 rated Udemy courses in Angular on CourseDuck:

  • Rating4.2 out of 5higher than 13% of them
  • Reviews1,357#44 of 96 by number of reviews
  • Length6.8 hoursshorter than 50% of them
  • Last updatedSeptember 2026more recently than 84% of them

icon
Course Description

Would You Like to Build Your Own Open Source Library?
Probably all of us developers have thought at some point in time to build our own library and contribute to the overall open source community. The goal of this course is to give you all the tools necessary for you to be able to do your own open source Angular Library.

We will build a series of small open source libraries of progressively increasing difficulty, and we will learn a large number of Angular advanced features in a very fun and practical way.

What Is The Best Way To Learn Advanced Angular Features?
The best way to learn Angular and its most advanced features is to simply take and use it to build something very concrete, like for example an application or a library - and do it in a step-by-step way, as there is no replacement for that experience.

In order to understand a technology, we really need to build something non-trivial with it - blog posts and docs will only get us so far.

This is of course very time-consuming to do without any help because we will have to learn everything by ourselves along the way as we build something, gluing together an endless number of blog posts, documentation and Stackoverflow answers.

So because of this, in order to really dive deep into Angular we will be using it to build a series of small reusable libraries. The goal is to create a practice scenario, and learn the advanced features of Angular in their original use cases, where they make the most sense and so are easier to learn.

What Libraries Will We Build In This Course?
We will be building the following libraries, and learn how to publish them on NPM using the Angular Package Format: We will start by doing a Font Awesome customizable Input Box and learn the advantages of designing our components using content projection over a more input/output based design. At this stage we will also introduce the Angular Testing ecosystem.

Then we will progressively increase the difficulty of each library: we will build a dynamic tab container that allows to receive a template as a component input, effectively allowing to override parts of the component template while keeping a default look and feel for the component.

We will then build a reusable dynamic modal component with customizable content. This component have its contents configurable via either content projection or an input template, and will introduce the notion of Structural Directives.

We will also learn how directives and components of a given module can interact in a transparent way, independently of the place where they are used in the template, using a shared library service. We will then build a Input mask directive, where we will cover some advanced keyboard handling behavior.

At the end of the course, we are going to take all the components and directives that we built in previous sections, and we are going to build one larger example using them: A Payment Modal Widget!

We will then introduce the Angular Animations module, and use it to animate the modal widget, we will see how to define animations that can be reused across components.

What Will you Learn In this Course?
We will learn how to create an AOT compatible library in the Angular Package Format, how to define a library module, how to isolate the styles of a component but still make them customizable, how to design components and directives to make them easier to maintain - making them customizable while at the same time giving the components great default behavior.

We will cover all of the more advanced features of Angular, including Component API Design, Component Styling best practices, Templates and Template Outlets, ng-content, ng-container, style isolation and customization, AOT, global events, debugging with the CLI, @ViewChildren, @ContentChildren, Light DOM vs Shadow DOM, @HostBinding, @HostListener, dynamic components, directives, handling keyboard events, testing, animations and more (this is a non-extensive list).

But more than presenting the features in isolation, we will use them in real use cases which will make the features much easier to learn.

What Will You Be Able to do at the End Of This Course?
By the end of this course you will know many of the most advanced features of Angular, but most of all you will know when to use them and why. You will know how to build open source Angular libraries, and know how to make them available to the open source community on NPM.

With this advanced course, you will have a rock-solid foundation on Angular: you will very likely be able to tackle the more advanced Angular development tasks that you will come across in your day to day job or personal projects.

Have a look at the course free lessons below, and please enjoy the course!

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Angular University

Hello, I'm Vasco Cavalheiro and I'm an online instructor at the Angular University.

Over the years I have helped over 200k developers to learn the Angular framework and its surrounding ecosystem of technologies.

Check out my Linkedin in the links section on the top right.

About the Angular University:

The Angular University aims to be the one place that you go in order to learn and keep up with the whole Angular ecosystem. We provide premium quality video tutorials, screencast style.

No matter if you are a beginner, intermediate or advanced in Angular, we have several courses for you.

More about me:

I'm a Software Developer with many years of experience, very seasoned building user interfaces with Angular. I've worked as a Frontend Developer/Architect in a large variety of enterprise projects throughout the years.   

I worked on a ton of projects, everything from single page applications to help build the European Criminal Record Information Exchange System, to brand new e-banking portals, to corporate banking portals, and more. I've been a key part of internal framework teams that built frameworks for in-house departments of tens of developers.

I also love to teach, write and talk about technology.  I am looking forward to be your Angular instructor,

Kind Regards,

Vasco

icon
More courses by Angular University

$74.99

$11.99

$13.99

$14.99

$11.99

Free

icon
More Angular courses

Free

$129.99

$14.99

$13.99

$84.99

Free

icon
Reviews

4.2

1,357 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Dominik Rebitzer on 10/22/2025

Let's put it like this: The course still has value to it even though it is quite outdated. The core principals of Angular still apply. In times of Signals and Template Control Flow Syntax, though, there needs to be an update. Angular University needs to step up their game here and actually look after their product. People pay actual money here and I think the expectation to receive an up2date course is not that far fetched.

By José Lezama on 1/14/2020

It's an awesome course. It teach what you need. But I think there is a big issue for new developers: - MESSY/Vague Indentation. It's a BIG problem, It was a nightmare, really hard to understand and it could be even worst 'cuz new developers will learn in this messy way. - NON well tested repos (in one case missing `node-sass` don't let you do 1 test) - Better explanations sometimes (In a level I couldn't finished 'cuz a missed step in the explanation)

By Fred Dukker on 3/13/2019

This was really an advanced course with a lot of nice insights. One of the best courses I ever followed. One small remark: - The course needs to be updated how to create an angular npm module. The explained solution is deprecated. Subjects I like to be added to the course: - How to adjust the Angular Material components with maintainability in mind. At my work (and I know also other companies has the same issue) the UX/Designers come with deviations on Material Components. Add changes on these Material components becomes easy a maintenance nightmare.

By Mo Geeker on 1/11/2019

Instructor talks fast without pause with an accent where as to leave time for a brain to comprehend what was said. Also, starting from snippets/predefined code does not explain how he got there or significance of why. Css module includes testing; maybe testing should have been removed to a separate module. In all, I recommend the course to users seeking advance Angular skills.

By Tracy Riley on 8/28/2018

This is one of the best courses containing real-world applications. It made me painfully aware how much I duplicate code and functionality! Even though I was already fluent in many of the techniques used in the course, I did find the pace somewhat fast and will need to watch the course a couple more times to fully grasp each concept. Thank you, Vasco, for a course that will definitely help me to become a better Angular developer! I look forward to taking some of your other courses.

By John Buchmann on 8/26/2018

Overall, it's a good course. The material covered here is covered much more in depth than other courses (for components, templates, etc.) A nit pick I have is the white themed text editor. These days, instructors typically use dark themed text editors, like the default one in VS Code. It's far easier on the eyes and the color coding is usually a lot better. I did find that Vasco went a bit too fast of a pace, where I found I had to pause and rewind quite a lot. Sometimes tricky bits that need deeper explanations are went over too quickly... like how he did: let-tabs="tabs" on the . Since this was very important I had to research the "let-xyz" syntax, and found there is not much out there to explain well. Thankfully I did run into Vasco's own in-depth blog post on his website which did a good job explaining it.

By Szabolcs Hodossy on 7/8/2018

It is a great course for those who are already somewhat familiar with Angular already. I like the approach to show multiple solutions for the same problem and the explanation are really useful. One can also learn a lot from the problem debuggings both on HTML/CSS and Angular side. On the downside, I would have liked to see test driven development, as Angular is a perfect fit for that, so I think it is missed opportunity.

By Samu Viitanen on 4/26/2018

Everything about content projection, templates, containers and writing modular and re-usable components was pure gold for me at least. I have not stumbled on those concepts anywhere and was really surprised that I have missed such important part of Angular development. I think Vasco is a great instructor. He explains complicated things in a relaxed and clear way. He appears to have a lot of experience and also seems to really know his way around Angular really well. I bought this course hoping to find some answers for managing the development of a single Angular application across different teams and different repositories. I sort of got the answer in the "custom library" part, but did not get exactly what I was looking for. Personally I think the input mask thing was a little out of place in this course and wasn't really Angular specific, but that part was really interesting to me anyway. I would love to see a course/blog about developing enterprise Angular applications where different modules of the application are not part of the main application code base and are lazily loaded in the main application in build. Also, how those external modules would be developed and tested in isolation. Great job Vasco, hoping to see more great courses from you!

By Denis Dimitrov on 9/25/2017

Great course - very important component structures explained as well as important and popular use cases - like customizing input behavior. The only thing I disliked was that at the start and end of almost every lesson there is too much introduction on what we are going to do next. I prefer the step by step approach rather to listening what is going to come up next upfront in great detail before it actually does come up. Thank you for the course, learned a lot from it!

By Simon St-Germain on 9/12/2017

Excellent course, like all other Angular University courses. This course gradually evolves toward more advanced concepts and features of Angular. Being a junior-intermediate level developer, I even learned some programming patterns and approaches to common challenges that are applicable outside of Angular. Always a bonus. Angular being an advanced framework, a course on advanced topics could have been made much longer but at some point it would be too much. I view this course more as a "concise introduction to advanced Angular topics" than a MasterClass. A complete MasterClass would just be way too long. This course gives you a good glimpse of all the power that is made available to you as a developer through the sheer amount of built-in features. Then, you will have plenty of concepts to implement with real coding and continue evolving. Something that I always look for in courses like this one is answers to the WHY of using some features of a framework instead of using more traditional approaches (for example, WHY should you use features of the Angular Animations Module instead of regular CSS Animations?). Vasco (the instructor) provides answers to these types of questions most of the time. But I think instructors in general should provide more answers, more often, to these interrogations that you have all the time as a developer when you have multiple technologies that could accomplish the same task. Because a framework as a feature for something doesn't mean it's the BEST way to accomplish that task. This is always tricky with the new and shiny technologies, and I would like to hear more opinions from the instructors in advanced courses. But others could find that it's bloating the course... So it's more of a personal wish than a criticism. All in all, an amazing course with a great instructor!

Showing all 10 reviews on CourseDuck

Read all 1,357 reviews on Udemy

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 84 / 100