Angular University

Angular University Angular University - Learn and Keep Up with the Angular Ecosystem

๐Ÿš€ Last week, I announced my new Angular For Beginners (Signals Edition) course.Today, Iโ€™m happy to share that the first ...
03/09/2026

๐Ÿš€ Last week, I announced my new Angular For Beginners (Signals Edition) course.

Today, Iโ€™m happy to share that the first ๐Ÿญ๐Ÿฑ ๐—น๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—ฎ๐—ฟ๐—ฒ ๐—ป๐—ผ๐˜„ ๐—ฎ๐˜ƒ๐—ฎ๐—ถ๐—น๐—ฎ๐—ฏ๐—น๐—ฒ โ€” ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ฒ๐—น๐˜† ๐—ณ๐—ฟ๐—ฒ๐—ฒ.

๐Ÿ”— https://angular-university.io/course/angular-for-beginners-course

Thatโ€™s already over ๐Ÿญ ๐—ต๐—ผ๐˜‚๐—ฟ ๐—ฎ๐—ป๐—ฑ ๐Ÿฐ๐Ÿญ ๐—บ๐—ถ๐—ป๐˜‚๐˜๐—ฒ๐˜€ ๐—ผ๐—ณ ๐˜ƒ๐—ถ๐—ฑ๐—ฒ๐—ผ, taking you step by step through the foundations of modern Angular.

๐Ÿ“š In these first lessons, we cover:

โœ… Setting up your Angular development environment

โœ… The Angular CLI and creating components

โœ… Components, templates and styles

โœ… Interpolation and property binding

โœ… Event handling

โœ… Signal-based component inputs and outputs

โœ… , and

โœ… Conditional CSS

โœ… Building reusable components

The course is currently in ๐—ฝ๐—ฟ๐—ฒ-๐—ฟ๐—ฒ๐—ฐ๐—ผ๐—ฟ๐—ฑ๐—ถ๐—ป๐—ด, so this is just the beginning.

Iโ€™ll be adding ๐—ป๐—ฒ๐˜„ ๐—น๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—ฒ๐˜ƒ๐—ฒ๐—ฟ๐˜† ๐˜„๐—ฒ๐—ฒ๐—ธ ๐˜‚๐—ป๐˜๐—ถ๐—น ๐˜๐—ต๐—ฒ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ ๐—ถ๐˜€ ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ฒ, so you can start learning now and follow along as the rest of the course is released.

๐ŸŽฏ The goal is to teach you ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฎ๐˜€ ๐—ถ๐˜ ๐—ถ๐˜€ ๐˜„๐—ฟ๐—ถ๐˜๐˜๐—ฒ๐—ป ๐˜๐—ผ๐—ฑ๐—ฎ๐˜†, focusing first on the features youโ€™ll use constantly in real-world Angular applications.

I hope you enjoy the first lessons! ๐Ÿ™Œ

Vasco
Angular University

angular-university.io

Iโ€™m happy to announce a brand-new ๐—™๐—ฅ๐—˜๐—˜ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ that Iโ€™m currently recording: ๐ŸŽ‰๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ ๐—•๐—ฒ๐—ด๐—ถ๐—ป๐—ป๐—ฒ๐—ฟ๐˜€ (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜...
28/08/2026

Iโ€™m happy to announce a brand-new ๐—™๐—ฅ๐—˜๐—˜ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ that Iโ€™m currently recording: ๐ŸŽ‰

๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ ๐—•๐—ฒ๐—ด๐—ถ๐—ป๐—ป๐—ฒ๐—ฟ๐˜€ (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป) ๐Ÿš€

๐Ÿ”— https://angular-university.io/course/angular-for-beginners-course

๐—”๐—ฏ๐—ผ๐˜‚๐˜ ๐˜๐—ต๐—ถ๐˜€ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ ๐Ÿ“š

This course is for anyone learning Angular for the first time, or coming back to Angular after a few years and wondering how much it has changed since the Signals revolution started. ๐Ÿ”„

Angular is a big framework, and when you are starting out, it can be difficult to know what you actually need to learn first. ๐Ÿค”

The idea behind this course is simple:

๐—œ๐—ป ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ, ๐˜†๐—ผ๐˜‚ ๐—ฝ๐—ฟ๐—ผ๐—ฏ๐—ฎ๐—ฏ๐—น๐˜† ๐˜‚๐˜€๐—ฒ ๐Ÿญ๐Ÿฌ% ๐—ผ๐—ณ ๐˜๐—ต๐—ฒ ๐—ณ๐—ฟ๐—ฎ๐—บ๐—ฒ๐˜„๐—ผ๐—ฟ๐—ธ ๐Ÿต๐Ÿฌ% ๐—ผ๐—ณ ๐˜๐—ต๐—ฒ ๐˜๐—ถ๐—บ๐—ฒ.๐Ÿ’ก

So instead of trying to teach you everything, this course focuses first on that essential 10% โ€” and teaches it in the order that makes it easiest to understand. ๐ŸŽฏ

And importantly, ๐˜๐—ต๐—ถ๐˜€ ๐—ถ๐˜€ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฎ๐˜€ ๐—ถ๐˜ ๐—ถ๐˜€ ๐˜„๐—ฟ๐—ถ๐˜๐˜๐—ฒ๐—ป ๐˜๐—ผ๐—ฑ๐—ฎ๐˜†. โšก

We use signals from the beginning, the new built-in template control flow, signal-based inputs and outputs, zoneless change detection, and the modern Angular APIs. ๐Ÿ› ๏ธ

๐—ง๐—ต๐—ฒ๐—ฟ๐—ฒ ๐—ถ๐˜€ ๐—ป๐—ผ ๐—น๐—ฒ๐—ด๐—ฎ๐—ฐ๐˜† ๐˜€๐˜†๐—ป๐˜๐—ฎ๐˜… ๐˜๐—ต๐—ฎ๐˜ ๐˜†๐—ผ๐˜‚ ๐˜„๐—ถ๐—น๐—น ๐—ต๐—ฎ๐˜ƒ๐—ฒ ๐˜๐—ผ ๐˜‚๐—ป๐—น๐—ฒ๐—ฎ๐—ฟ๐—ป ๐—น๐—ฎ๐˜๐—ฒ๐—ฟ. ๐Ÿ™Œ

The course is completely hands-on. ๐Ÿง‘โ€๐Ÿ’ป You start with an application that already contains the HTML, CSS, and backend, but essentially ๐—ป๐—ผ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฐ๐—ผ๐—ฑ๐—ฒ.

From there, we build the Angular application together, step by step. ๐Ÿ‘ฃ

Youโ€™ll learn how to build and compose components, work with signals, use the new template control flow, handle events, fetch and update backend data, create services, use dependency injection, and much more. ๐Ÿš€

There are ๐—ป๐—ผ ๐—ณ๐—ผ๐—ฟ๐˜„๐—ฎ๐—ฟ๐—ฑ ๐—ฟ๐—ฒ๐—ณ๐—ฒ๐—ฟ๐—ฒ๐—ป๐—ฐ๐—ฒ๐˜€ ๐—ฎ๐—ป๐—ฑ ๐—ป๐—ผ ๐—ฐ๐—ผ๐—ป๐—ฐ๐—ฒ๐—ฝ๐˜๐˜€ ๐—ถ๐—ป๐˜๐—ฟ๐—ผ๐—ฑ๐˜‚๐—ฐ๐—ฒ๐—ฑ ๐—ฏ๐—ฒ๐—ณ๐—ผ๐—ฟ๐—ฒ ๐˜†๐—ผ๐˜‚ ๐—ป๐—ฒ๐—ฒ๐—ฑ ๐˜๐—ต๐—ฒ๐—บ. Every lesson builds only on what you learned before. ๐Ÿงฉ

The only prerequisites are ๐—›๐—ง๐— ๐—Ÿ, ๐—–๐—ฆ๐—ฆ ๐—ฎ๐—ป๐—ฑ ๐—ฏ๐—ฎ๐˜€๐—ถ๐—ฐ ๐—๐—ฎ๐˜ƒ๐—ฎ๐—ฆ๐—ฐ๐—ฟ๐—ถ๐—ฝ๐˜. ๐Ÿ’ป

You donโ€™t need previous Angular experience, RxJs knowledge, or much TypeScript. ๐Ÿ‘

๐—ง๐—ต๐—ฒ ๐—ณ๐—ถ๐—ฟ๐˜€๐˜ ๐—น๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—ฎ๐—ฟ๐—ฒ ๐—ฐ๐—ผ๐—บ๐—ถ๐—ป๐—ด ๐—ป๐—ฒ๐˜…๐˜ ๐˜„๐—ฒ๐—ฒ๐—ธ, ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ฒ๐—น๐˜† ๐—ณ๐—ฟ๐—ฒ๐—ฒ. ๐ŸŽ‰

I hope you enjoy the course! โค๏ธ

Vasco

Angular University

angular-university.io

Iโ€™m very happy to announce that ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป) is now fully available!๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต...
28/07/2026

Iโ€™m very happy to announce that ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป) is now fully available!

๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)
๐Ÿ”— https://angular-university.io/course/angular-router-in-depth-course

๐—”๐—ฏ๐—ผ๐˜‚๐˜ ๐—ง๐—ต๐—ถ๐˜€ ๐—–๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ
The Angular Router is the skeleton of every Angular application. It determines how the application is structured, how pages load, how data reaches components, and how users navigate through the product.

But once you move beyond basic routes and navigation links, the router is also one of the least understood parts of Angular.

This new course changes that.

We start with an application that has no routing and progressively implement practically every routing scenario you are likely to encounter in a real Angular project.

The course includes ๐Ÿฐ๐Ÿฏ ๐—น๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—ฎ๐—ป๐—ฑ ๐—ฎ๐—น๐—บ๐—ผ๐˜€๐˜ ๐—ณ๐—ถ๐˜ƒ๐—ฒ ๐—ต๐—ผ๐˜‚๐—ฟ๐˜€ ๐—ผ๐—ณ ๐˜ƒ๐—ถ๐—ฑ๐—ฒ๐—ผ, covering topics such as:

โžค Lazy loading with loadComponent and loadChildren

โžค Route parameters, resolvers, and component input binding

โžค Authentication, child-route, exit-confirmation, and feature-flag guards

โžค Route-scoped providers and services

โžค Navigation state, transient information, and advanced URL handling

โžค Custom preloading strategies and router events

โžค Signals-based router APIs and view transitions

โžค Scroll restoration and navigation error handling

โžค Custom URL matchers and named outlets

Everything is built with modern Angular, including standalone components, signals, zoneless change detection, and functional guards and resolvers.

The course also includes a complete running GitHub repository.

After completing the course, you can earn a ๐˜ƒ๐—ฒ๐—ฟ๐—ถ๐—ณ๐—ถ๐—ฎ๐—ฏ๐—น๐—ฒ ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ ๐—ผ๐—ณ ๐—–๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ถ๐—ผ๐—ป that you can download as a PDF and add to your LinkedIn profile or CV.

๐Ÿ‘‰ ๐—ฆ๐˜๐—ฎ๐—ฟ๐˜ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต

Several lessons are available for free, so you can start watching immediately.

I hope you enjoy the course!

Vasco
Angular University
angular-university.io

๐Ÿš€ This week, you have a new hour of content for the ongoing  Angular Router In Depth (Signals Edition) course!๐Ÿ“– The cour...
17/07/2026

๐Ÿš€ This week, you have a new hour of content for the ongoing Angular Router In Depth (Signals Edition) course!

๐Ÿ“– The course is currently in pre-launch mode. New lessons are available weekly until the course is completed ๐—ฏ๐˜† ๐˜๐—ต๐—ฒ ๐—ฒ๐—ป๐—ฑ ๐—ผ๐—ณ ๐˜๐—ต๐—ถ๐˜€ ๐—บ๐—ผ๐—ป๐˜๐—ต.

๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)
๐Ÿ”— https://angular-university.io/course/angular-router-in-depth-course

๐ŸŽฅIn this week's lessons we are covering most of Part 1 of the course where we cover the most used features of the Router. Part 2 will cover the niche and more advanced features.

One the most important features are child routes, nested outlets and a master-detail navigation with detail to detail navigation.

๐Ÿ“š๐—”๐—ฏ๐—ผ๐˜‚๐˜ ๐˜๐—ต๐—ถ๐˜€ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ
This is a complete, modern deep dive into one of the most powerful โ€” and most underused โ€” parts of Angular.๐Ÿ’Ž

The Angular Router is much more than navigation between pages. It is the backbone of every Angular application, responsible for application structure, data loading, authentication, lazy loading, and much more. Yet most developers only scratch the surface of what it can do.

โšก๏ธ Besides, the router is now ๐—ณ๐˜‚๐—น๐—น๐˜† ๐—ถ๐—ป๐˜๐—ฒ๐—ด๐—ฟ๐—ฎ๐˜๐—ฒ๐—ฑ with signals. You don't have to use the legacy RxJs-based APIs anymore.

In this course we'll explore everything from the fundamentals to advanced routing patterns using the latest Angular APIs:
โœ… Standalone Components
Signals
โœ… Zoneless Change Detection
โœ… Functional Guards & Resolvers
โœ… Modern provideRouter() configuration

We'll start with an application that has ๐—ป๐—ผ ๐—ฟ๐—ผ๐˜‚๐˜๐—ถ๐—ป๐—ด at all and progressively build a production-ready routing architecture while covering both the essential concepts and the advanced features that are rarely explained in depth.

๐Ÿ“– ๐—ฆ๐—ผ๐—บ๐—ฒ ๐—ผ๐—ณ ๐˜๐—ต๐—ฒ ๐˜๐—ผ๐—ฝ๐—ถ๐—ฐ๐˜€ ๐—ฐ๐—ผ๐˜ƒ๐—ฒ๐—ฟ๐—ฒ๐—ฑ ๐—ถ๐—ป๐—ฐ๐—น๐˜‚๐—ฑ๐—ฒ:
โœ… Lazy loading with loadComponent and loadChildren
โœ… Functional guards (canActivate, canDeactivate, canMatch, canActivateChild)
โœ… Route resolvers
โœ… Child routes and nested outlets
โœ… Route-scoped dependency injection
โœ… Navigation extras (state, info, browserUrl, replaceUrl, skipLocationChange)
โœ… Query parameter handling
โœ… Custom preloading strategies
โœ… Router events and navigation loading indicators
โœ… Signals integration with the Router
View Transitions
โœ… URL Matchers
โœ… ROUTER_OUTLET_DATA
โœ… Navigation error handling
โœ… Scroll restoration
โœ… And much more.

The course follows the same practical approach as my other Angular University courses: every concept is demonstrated by building real application features that you'll encounter in production.

๐Ÿ™ I hope you enjoy the course, and as always, if you have any questions, I'm here to help.

๐ŸŽ‰ Happy learning!

Vasco
Angular University
angular-university.io

๐Ÿš€I'm excited to announce a ๐—ฏ๐—ฟ๐—ฎ๐—ป๐—ฑ ๐—ป๐—ฒ๐˜„ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ:๐ŸŽ“๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)๐Ÿ”—  https://angular-university.io/c...
03/07/2026

๐Ÿš€I'm excited to announce a ๐—ฏ๐—ฟ๐—ฎ๐—ป๐—ฑ ๐—ป๐—ฒ๐˜„ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ:
๐ŸŽ“๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฅ๐—ผ๐˜‚๐˜๐—ฒ๐—ฟ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)
๐Ÿ”— https://angular-university.io/course/angular-router-in-depth-course

This course is currently in ๐—ฃ๐—ฅ๐—˜-๐—Ÿ๐—”๐—จ๐—ก๐—–๐—›. The first 40 minutes are already available.

New lessons are being recorded every week and added to the course, until the course is completed.

๐Ÿ“– ๐—”๐—ฏ๐—ผ๐˜‚๐˜ ๐˜๐—ต๐—ถ๐˜€ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ
This is a complete, modern deep dive into one of the most powerful โ€” and most underused โ€” parts of Angular.

The Angular Router is much more than navigation between pages. It is the backbone of every Angular application, responsible for application structure, data loading, authentication, lazy loading, and much more. Yet most developers only scratch the surface of what it can do.

โœจ Besides, the router is now ๐—ณ๐˜‚๐—น๐—น๐˜† ๐—ถ๐—ป๐˜๐—ฒ๐—ด๐—ฟ๐—ฎ๐˜๐—ฒ๐—ฑ ๐˜„๐—ถ๐˜๐—ต ๐˜€๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€. You don't have to use the legacy RxJs-based APIs anymore.

In this course we'll explore everything from the fundamentals to advanced routing patterns using the latest Angular APIs:

โ€ฃ Standalone Components
โ€ฃ Signals
โ€ฃ Zoneless Change Detection
โ€ฃ Functional Guards & Resolvers
โ€ฃ Modern provideRouter() configuration

We'll start with an application that ๐—ต๐—ฎ๐˜€ ๐—ป๐—ผ ๐—ฟ๐—ผ๐˜‚๐˜๐—ถ๐—ป๐—ด ๐—ฎ๐˜ ๐—ฎ๐—น๐—น and progressively build a production-ready routing architecture while covering both the essential concepts and the advanced features that are rarely explained in depth.

๐Ÿ“š Some of the topics covered include:

โ€ฃ Lazy loading with loadComponent and loadChildren
โ€ฃ Functional guards (canActivate, canDeactivate, canMatch, canActivateChild)
โ€ฃ Route resolvers
โ€ฃ Child routes and nested outlets
โ€ฃ Route-scoped dependency injection
โ€ฃ Navigation extras (state, info, browserUrl, replaceUrl, skipLocationChange)
โ€ฃ Query parameter handling
โ€ฃ Custom preloading strategies
โ€ฃ Router events and navigation loading indicators
โ€ฃ Signals integration with the Router
โ€ฃ View Transitions
โ€ฃ URL Matchers
โ€ฃ ROUTER_OUTLET_DATA
โ€ฃ Navigation error handling
โ€ฃ Scroll restoration
โ€ฃ And much more.

The course follows the same practical approach as my other Angular University courses: every concept is demonstrated by building real application features that you'll encounter in production.

๐ŸŽฏ If you've ever felt that there was "more" to the Angular Router than what most tutorials coverโ€”you were right. This course explores that missing territory.

I hope you enjoy the course, and as always, if you have any questions, I'm here to help.

๐ŸŽ‰Happy learning!

Vasco

Angular University

angular-university.io

๐Ÿš€ ๐—ก๐—ฒ๐˜„ ๐—–๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ ๐—Ÿ๐—ฎ๐˜‚๐—ป๐—ฐ๐—ต๐—ฒ๐—ฑ: ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)๐ŸŽ‰ I've just launched a ๐—ฏ๐—ฟ๐—ฎ๐—ป๐—ฑ ๐—ป๐—ฒ๐˜„ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ โ€” ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ...
26/06/2026

๐Ÿš€ ๐—ก๐—ฒ๐˜„ ๐—–๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ ๐—Ÿ๐—ฎ๐˜‚๐—ป๐—ฐ๐—ต๐—ฒ๐—ฑ: ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)

๐ŸŽ‰ I've just launched a ๐—ฏ๐—ฟ๐—ฎ๐—ป๐—ฑ ๐—ป๐—ฒ๐˜„ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ โ€” ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป), that teaches you to build any form you'll ever need using the new Angular Signal Forms API.

The course is ๐—ณ๐˜‚๐—น๐—น๐˜† ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ฒ, and I've used a new way of recording. Instead of typing, the code is progressively unveiled bit by bit.

โœจ This makes the course signal-to-noise ratio much better. ๐Ÿ˜‰

๐Ÿ‘‰ Go and check out the free lessons, and see for yourself:

๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป) ๐Ÿ‘‡

๐Ÿ”— https://angular-university.io/course/angular-forms-in-depth-course

๐Ÿ“– ๐—”๐—ฏ๐—ผ๐˜‚๐˜ ๐˜๐—ต๐—ถ๐˜€ ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ

If you've ever wrestled with reactive forms, FormControl, nested form groups, or async validators, you'll want to see this.

โšก Signal Forms is a complete redesign of Angular forms built around signals: model-driven, fully typed, and with a fraction of the boilerplate of reactive or template-driven forms.

๐ŸŽฏ By the end of the course you'll be able to:

โœ… Build any form from scratch with Signal Forms

โœ… Apply built-in, custom, and async server-side validators

โœ… Create reusable custom controls that plug straight into the form system

โœ… Handle conditional fields, cross-field validation, and dynamic arrays

โœ… Integrate Zod via Standard Schema

โœ… Ship production patterns: unsaved-changes guards, multi-step wizards, file upload with progress, and draft pre-saving

๐Ÿ’ป We build it all through a single real-world sample app, with a running GitHub repo you can clone and follow along.

๐Ÿ’™ Happy coding,

Angular University

๐ŸŒ angular-university.io

๐Ÿš€ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐Ÿฎ๐Ÿฎ: ๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น ๐—™๐—ผ๐—ฟ๐—บ๐˜€ โ€” ๐—ž๐—ฒ๐˜† ๐—”๐—ฑ๐˜ƒ๐—ฎ๐—ป๐˜๐—ฎ๐—ด๐—ฒ๐˜€ โšกโœ… ๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—ถ๐˜€ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ'๐˜€ ๐—ฟ๐—ฒ๐—ฎ๐—ฐ๐˜๐—ถ๐˜ƒ๐—ถ๐˜๐˜† ๐—ฎ๐—ฝ๐—ฝ๐—น๐—ถ๐—ฒ๐—ฑ ๐˜๐—ผ ๐—ณ๐—ผ๐—ฟ๐—บ๐˜€The model is just a ...
23/06/2026

๐Ÿš€ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐Ÿฎ๐Ÿฎ: ๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น ๐—™๐—ผ๐—ฟ๐—บ๐˜€ โ€” ๐—ž๐—ฒ๐˜† ๐—”๐—ฑ๐˜ƒ๐—ฎ๐—ป๐˜๐—ฎ๐—ด๐—ฒ๐˜€ โšก

โœ… ๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—ถ๐˜€ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ'๐˜€ ๐—ฟ๐—ฒ๐—ฎ๐—ฐ๐˜๐—ถ๐˜ƒ๐—ถ๐˜๐˜† ๐—ฎ๐—ฝ๐—ฝ๐—น๐—ถ๐—ฒ๐—ฑ ๐˜๐—ผ ๐—ณ๐—ผ๐—ฟ๐—บ๐˜€

The model is just a signal, so everything else in the Angular Signals ecosystem works naturally alongside forms. You stop thinking "how do I connect my data to the form?" and start thinking in one unified model for the whole app. ๐ŸŽฏ

โœ… ๐—ง๐—ต๐—ฒ ๐—บ๐—ผ๐—ฑ๐—ฒ๐—น ๐—ถ๐˜€ ๐˜๐—ต๐—ฒ ๐˜€๐—ผ๐˜‚๐—ฟ๐—ฐ๐—ฒ ๐—ผ๐—ณ ๐˜๐—ฟ๐˜‚๐˜๐—ต

The form derives from the data, not the other way around. This eliminates a whole category of bugs where you'd update the form but forget to update the component state โ€” and nothing would tell you something was wrong.

โœ… ๐—ก๐—ผ ๐—บ๐—ผ๐—ฟ๐—ฒ ๐—ถ๐—บ๐—ฝ๐—ฒ๐—ฟ๐—ฎ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ณ๐—ผ๐—ฟ๐—บ ๐—บ๐—ฎ๐—ป๐—ฎ๐—ด๐—ฒ๐—บ๐—ฒ๐—ป๐˜

Responding to field changes used to mean subscribing to value changes and manually orchestrating enable, disable, and validator updates.

Now you declare the relationship once and Angular keeps it in sync. ๐Ÿ”„

โœ… ๐—ฉ๐—ฎ๐—น๐—ถ๐—ฑ๐—ฎ๐˜๐—ผ๐—ฟ๐˜€ ๐—ฎ๐—ฟ๐—ฒ ๐—ท๐˜‚๐˜€๐˜ ๐—ณ๐˜‚๐—ป๐—ฐ๐˜๐—ถ๐—ผ๐—ป๐˜€ โ€” ๐˜€๐—ต๐—ฎ๐—ฟ๐—ฒ ๐˜๐—ต๐—ฒ๐—บ ๐—ฎ๐—ป๐˜†๐˜„๐—ต๐—ฒ๐—ฟ๐—ฒ

Because validators are plain functions, you can extract and reuse them across any form in the app.

No special registration.
No service injection.
No ceremony. โœจ

โœ… ๐—•๐˜‚๐—ถ๐—น๐—ฑ๐—ถ๐—ป๐—ด ๐—ฐ๐˜‚๐˜€๐˜๐—ผ๐—บ ๐—ณ๐—ผ๐—ฟ๐—บ ๐—ฐ๐—ผ๐—ป๐˜๐—ฟ๐—ผ๐—น๐˜€ ๐—ถ๐˜€ ๐—ป๐—ผ๐˜„ ๐˜€๐˜๐—ฟ๐—ฎ๐—ถ๐—ด๐—ต๐˜๐—ณ๐—ผ๐—ฟ๐˜„๐—ฎ๐—ฟ๐—ฑ
The old contract for a custom form control required four methods and careful lifecycle management. The new one reduces this to a single value input/output. ๐ŸŽ‰

โœ… ๐—”๐—ฟ๐—ฟ๐—ฎ๐˜†๐˜€ ๐—ฎ๐—ฟ๐—ฒ ๐—ท๐˜‚๐˜€๐˜ ๐—ฑ๐—ฎ๐˜๐—ฎ

There is no special form array construct. Just use applyEach to define your array item form schema. Then add or remove items in your model signal and the form reacts.

Again, the source of truth is the data, not the form.

๐Ÿš€ I'm excited to announce that the first lessons of my brand-new course are available:๐Ÿ”ฅ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ...
19/06/2026

๐Ÿš€ I'm excited to announce that the first lessons of my brand-new course are available:

๐Ÿ”ฅ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—™๐—ผ๐—ฟ๐—บ๐˜€ ๐—œ๐—ป ๐——๐—ฒ๐—ฝ๐˜๐—ต (๐—ฆ๐—ถ๐—ด๐—ป๐—ฎ๐—น๐˜€ ๐—˜๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป)

โšก This course is currently in ๐—ฃ๐—ฅ๐—˜-๐—Ÿ๐—”๐—จ๐—ก๐—–๐—›, and new lessons are being published every week.

๐Ÿ“š Right now, the course already includes ๐Ÿญ๐Ÿฑ ๐—น๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—ฎ๐—ป๐—ฑ ๐Ÿญ ๐—ต๐—ผ๐˜‚๐—ฟ ๐Ÿฐ๐Ÿฏ ๐—บ๐—ถ๐—ป๐˜‚๐˜๐—ฒ๐˜€ ๐—ผ๐—ณ ๐—ฐ๐—ผ๐—ป๐˜๐—ฒ๐—ป๐˜, with much more on the way.

๐ŸŽฏ ๐—ช๐—ต๐—ฎ๐˜ ๐—œ๐˜€ ๐—ง๐—ต๐—ถ๐˜€ ๐—–๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ ๐—”๐—ฏ๐—ผ๐˜‚๐˜?

Angular Signal Forms is a complete redesign of Angular Forms built around signals.

Instead of working with FormControl, FormGroup, and Observable-based APIs, Signal Forms introduces a more intuitive signal-driven approach with dramatically less boilerplate and a much cleaner developer experience.

In this course, you'll learn Signal Forms from the ground up by building enterprise-level forms and implementing the same patterns used in production Angular applications.

We'll cover everything from simple login forms to complex multi-step workflows, including:

โœ… Form validation and error handling

โœ… Custom validators

โœ… Zod and Standard Schema integration

โœ… Reusable custom form controls

โœ… Nested forms

โœ… File upload controls with progress indicators

โœ… Route guards for unsaved changes

โœ… Initializing forms from backend data

โœ… Async server-side validation

โœ… Conditional forms

โœ… Form arrays

โœ… Multi-step wizards

โœ… Draft auto-saving and restoration

๐ŸŽฏ The goal is simple: by the end of the course, you'll be able to build virtually any form with Angular Signal Forms confidently and efficiently.

๐Ÿ“– ๐—”๐˜ƒ๐—ฎ๐—ถ๐—น๐—ฎ๐—ฏ๐—น๐—ฒ ๐—Ÿ๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—ง๐—ผ๐—ฑ๐—ฎ๐˜†

The course currently includes the following lessons:

1. ๐ŸŽฌ Angular Forms In Depth Signals Edition - Introduction (07:29)

2. ๐ŸŽฌ Angular Signal Forms In a Nutshell (07:52)

3. ๐ŸŽฌ Angular Signal Forms Fundamentals - State Signals (07:21)

4. ๐ŸŽฌ Introducing Angular Form Validation (09:41)

5. ๐ŸŽฌ Displaying Form Field Errors - The Signals Way (08:53)

6. ๐ŸŽฌ Angular Form Submission and Resetting The Signal Way (05:39)

7. ๐ŸŽฌ Custom Form Field Validators - Password Strength Validator (05:37)

8. ๐ŸŽฌ Angular Signal Forms Standard Schema Support - Zod Schema (03:43)

9. ๐ŸŽฌ New Section - The User Profile Screen - Custom Signal Form Controls and More (04:02)

10. ๐ŸŽฌ Reviewing the File Upload Component (10:23)

11. ๐ŸŽฌ Implementing a File Upload Custom Form Control (08:26)

12. ๐ŸŽฌ Implementing a Nested Reusable Signal Form (11:06)

13. ๐ŸŽฌ Cancelling Router Navigation If Form Is Dirty (Unsaved Changes) (06:51)

14. ๐ŸŽฌ Initializing a Form From an Input or Backend With linkedSignal (06:03)

15.๐Ÿ“ฆ Plus additional supporting material and source code included in the course repository.

๐Ÿšง ๐—ฆ๐˜๐—ถ๐—น๐—น ๐—ง๐—ผ ๐—–๐—ผ๐—บ๐—ฒ

The course is far from complete.

Upcoming sections will cover:

๐Ÿ”น Async server-side validation with debouncing

๐Ÿ”น Conditional forms and cross-field validation

๐Ÿ”น Dynamic form arrays

๐Ÿ”น Multi-step form wizards

๐Ÿ”น Coordinating multiple forms

๐Ÿ”น Draft pre-saving and restoration

๐Ÿ”น Final production-ready application patterns

๐Ÿ“ˆ Every new lesson will be added to the course automatically as it's released.

๐Ÿ‘‰ Check out the course and watch the free lessons here ๐Ÿ”— https://angular-university.io/course/angular-forms-in-depth-course

๐ŸŽ‰ I hope you enjoy the course!

๐Ÿ’™ Happy coding,

Angular University

๐ŸŒ angular-university.io

๐ŸŽ‰ ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ๐˜€ ๐—ผ๐—ณ ๐—–๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ถ๐—ผ๐—ป and ๐—•๐—ผ๐—ผ๐—ธ๐—บ๐—ฎ๐—ฟ๐—ธ๐˜€ are now live at Angular University!๐Ÿ† ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ๐˜€ ๐—ผ๐—ณ ๐—–๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ถ๐—ผ๐—ปFinish all les...
18/06/2026

๐ŸŽ‰ ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ๐˜€ ๐—ผ๐—ณ ๐—–๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ถ๐—ผ๐—ป and ๐—•๐—ผ๐—ผ๐—ธ๐—บ๐—ฎ๐—ฟ๐—ธ๐˜€ are now live at Angular University!

๐Ÿ† ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ๐˜€ ๐—ผ๐—ณ ๐—–๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ถ๐—ผ๐—ป
Finish all lessons in a course and automatically earn a certificate of completion. Each certificate includes:

โœ… A unique credential ID
โœ… A public verification link
โœ… A downloadable PDF
โœ… One-click LinkedIn sharing

You'll find all your certificates under ๐— ๐˜† ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ๐˜€ in the menu.

๐Ÿ”– ๐—•๐—ผ๐—ผ๐—ธ๐—บ๐—ฎ๐—ฟ๐—ธ๐˜€
Found a lesson you want to revisit later? Simply click the bookmark icon to save it. Access all your saved lessons anytime under ๐— ๐˜† ๐—•๐—ผ๐—ผ๐—ธ๐—บ๐—ฎ๐—ฟ๐—ธ๐˜€.

๐Ÿ’ฌ What feature would you like to see added next at Angular University?

Happy learning,
Vasco

๐Ÿ”ฅ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐Ÿฎ๐Ÿฎ ๐—ป๐—ผ๐˜„ ๐—ต๐—ฎ๐˜€ ๐—ถ๐˜๐˜€ ๐—ผ๐˜„๐—ป ๐—”๐—œ ๐—”๐—ด๐—ฒ๐—ป๐˜ ๐—ฆ๐—ธ๐—ถ๐—น๐—น. โšกInstall it once and every coding agent instantly understands:โœ… Angular 22 ...
17/06/2026

๐Ÿ”ฅ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐Ÿฎ๐Ÿฎ ๐—ป๐—ผ๐˜„ ๐—ต๐—ฎ๐˜€ ๐—ถ๐˜๐˜€ ๐—ผ๐˜„๐—ป ๐—”๐—œ ๐—”๐—ด๐—ฒ๐—ป๐˜ ๐—ฆ๐—ธ๐—ถ๐—น๐—น. โšก

Install it once and every coding agent instantly understands:

โœ… Angular 22 best practices
โœ… Signals & Signal Forms
โœ… Standalone Components
โœ… Zoneless Angular
โœ… Modern Angular architecture
โœ… Angular coding conventions

Instead of generating generic code, your AI agent starts thinking like an Angular expert.

๐—œ๐—ป๐˜€๐˜๐—ฎ๐—น๐—น:

npx angular-cli-ai install-skill

๐Ÿง  ๐—ฌ๐—ผ๐˜‚๐—ฟ ๐—”๐—œ ๐—ถ๐˜€ ๐—ผ๐—ป๐—น๐˜† ๐—ฎ๐˜€ ๐—ด๐—ผ๐—ผ๐—ฑ ๐—ฎ๐˜€ ๐—ถ๐˜๐˜€ ๐—ฐ๐—ผ๐—ป๐˜๐—ฒ๐˜…๐˜.

For best results, combine it with the Angular 22 MCP Server and enable the experimental devserver tasks.

See my previous tweet for how to do that.

Adresse

Jemeppe-sur-Sambre

Notifications

Soyez le premier ร  savoir et laissez-nous vous envoyer un courriel lorsque Angular University publie des nouvelles et des promotions. Votre adresse e-mail ne sera pas utilisรฉe ร  d'autres fins, et vous pouvez vous dรฉsabonner ร  tout moment.

Contacter L'entreprise

Envoyer un message ร  Angular University:

Raccourcis

Partager