Angular is a popular TypeScript-based open-source web application framework created by Google.

We just published a comprehensive 18-hour Angular course for beginners on the freeCodeCamp.org YouTube channel.

In this course you will first you will learn the basics of TypeScript. Then you will learn about important Angular concepts such as binding, dependency injection, forms, routing, and more.

Santosh Yadav created this course. He is a Google Developer Expert for Angular, a GitHub Star, and an active contributor to both Angular and NgRx. So he is the perfect person to teach you Angular.

Here are the sections covered in this course:

Introduction

  • Introduction to Angular
  • Introduction to Typescript
  • SPA and Local Setup

Typescript

  • Typescript Data Types and Functions
  • Classes and Interface
  • Typescript decorators and tsconfig file

Angular Installation and Basics

  • Angular Installation and Binding Syntax
  • Built-in Directives
  • Built-in Pipes
  • Adding Bootstrap CSS to App

Lifecycle Hook and Component Communication

  • ngOnInt and Component Communication using Input and Output
  • Change Detection and ngOnChanges
  • ngDoCheck
  • ViewChild, ViewChildren and AfterViewInit
  • Content Projection, AfterContentInit and OnDestroy

Dependency Injection

  • Introduction
  • Resolution Modifiers
  • Value Providers

HttpClient and RxJs

  • Setting Up HttpClientModule
  • HttpService , RxJs observables and http get
  • RxJs Observable and Observer
  • Http Put and Delete
  • Http Request
  • ShareReplay RxJs Operators
  • Async Pipe
  • catchError operator
  • map operator
  • Http Interceptor
  • APP_INITIALIZER

Routing Basics

  • Angular Router and default Route
  • Adding Angular material and navigation
  • Wild card, dynamic route and ActivatedRoute service
  • ParamMap and Activate Route Service

Template Driven Forms

  • Introduction
  • Validation
  • Pristine, Dirty State and Reset Form
  • Custom Directives and Custom Validation

Advanced Routing

  • Navigation using Router Service
  • Feature and Routing Module
  • Nested and Child Route
  • Lazy Loading
  • Configure Lazy Loading using CLI
  • Using ProvidedIn Any
  • Router Events
  • Listening to Router Events

Route Guards

  • CanActivate
  • CanActivateChild
  • CanLoad

Reactive Forms

  • Introduction
  • Using Material Controls
  • Nested Form Controls
  • Dynamic Forms
  • Built-in Validators
  • Reset Form
  • Control Level Validation
  • SetValue and PatchValue
  • ValueChanges and UpdateOn
  • map operator with Form
  • Custom Validator

CanDeactivate Guard

  • CanDeactivate Guard and Form

Custom Pipes and Errors

  • Custom Pipe
  • Resolve Guard
  • Error Handling

Testing Basics

  • Introduction
  • First test
  • Testing Component and Service
  • Deployment and CI/CD
  • Using Netlify for Deployment
  • GitHub Actions to Automate Tasks

Watch the full course below or on the freeCodeCamp.org YouTube channel (18-hour watch).