Authors: Joe Eames, Deborah Kurata, Mark Zamoyta, John Papa, Brian Treese, Ajden Towfeek, Jon Friskics, Jim Cooper, Brian Noyes, Duncan Hunter, Brice Wilson, Dan Wahlin

Angular is a complete JavaScript framework for creating dynamic and interactive applications in HTML. Aside from being one of the hottest frameworks on the web, Angular is easy to... Read more

What you will learn

  • Angular core concepts
  • Angular CLI
  • Forms
  • Components
  • Routing
  • Services
  • Dependency injection
  • Unit testing
  • Advanced workflows


This path is intended for beginners and no prerequisites are required.


Get started quickly learning the new version of Angular. You will be introduced to Angular core concepts, then discover best practices for setting up Angular apps with its CLI, and finally, begin to explore Angular features like forms.

Angular: The Big Picture

by Joe Eames

Feb 25, 2021 / 1h 8m

1h 8m

Start Course

Angular is one of the most popular front end frameworks, but sometimes you can miss the forest for the trees. In this course, Angular: The Big Picture, you'll get a high level view of Angular as a framework. First, you'll learn Angular's benefits. Next, you'll discover its architecture. Finally, you'll explore some tips, tricks, gotchas, and where Angular is headed. When you're finished with this course, you'll have the skills and knowledge of Angular to either help you as you learn its syntax and APIs, or assist you in choosing a framework for your next project.

Table of contents
  1. Course Overview
  2. Introduction
  3. Benefits & Features of Angular
  4. Angular Architecture
  5. Tooling
  6. Tips, Tricks, & Gotchas
  7. Angular: Present & Future

Angular: Getting Started

by Deborah Kurata

Jun 9, 2021 / 5h 51m

5h 51m

Start Course

Hello! My name is Deborah Kurata, and welcome to Angular: Getting Started. In this course, you will learn how to create great web apps and stay up to date on the latest app development technologies, by coming up to speed quickly with Angular's components, templates, and services. You will get there by learning major topics like to set up your environment, learning about components, templates, and data binding and how they work together, discover how to build clean components with strongly-typed code, as well as building nested components and how to use dependency injection to inject the services you build and how to retrieve data using HTTP, navigation and routing.

By the end of this course, you will be up to date on all the latest Angular knowledge and you will be able to use Angular to create great apps in the future.

Before you begin, make sure you are already familiar with the basics of JavaScript, HTML, and CSS, and to get the most from this course, it’s helpful to have some exposure to object-oriented programming concepts.

And after this course, you’ll be ready to move on to additional courses in the Angular Learning Path, including Angular CLI, Angular Forms, and beyond.

I hope you’ll join me, and I look forward to helping you on your learning journey here at Pluralsight.

Table of contents
  1. Course Overview
  2. Introduction
  3. First Things First
  4. Introduction to Components
  5. Templates, Interpolation, and Directives
  6. Data Binding & Pipes
  7. More on Components
  8. Building Nested Components
  9. Services and Dependency Injection
  10. Retrieving Data Using HTTP
  11. Navigation and Routing Basics
  12. Navigation and Routing Additional Techniques
  13. Angular Modules
  14. Building, Testing, and Deploying with the CLI
  15. Final Words

Angular Forms

by Mark Zamoyta

Apr 2, 2019 / 2h 2m

2h 2m

Start Course

Forms are a vital part of web applications, since they're the primary way you collect data from your users. You want your forms to look good and offer a simple, smooth experience. In this course, Angular Forms, you'll learn how to create template-driven forms using the Angular framework. First, you'll discover how to style them, use data binding and then validate your forms. Next, you'll explore observables and posting your forms to a server. Finally, you'll learn about third-party form controls which offer much more functionality than standard HTML5. By the end of this course, you'll be able to build great looking forms that offer your users a simple way to input any data.

Table of contents
  1. Course Overview
  2. Introduction
  3. Form Basics in Angular
  4. Data Binding in Angular Forms
  5. Form Validation
  6. HTTP Form Posting and Data Access
  7. Third-party Form Controls

Angular CLI

by John Papa

Feb 1, 2021 / 3h 8m

3h 8m

Start Course

Do you want to hone your Angular skills and develop great apps faster, all while following the recommended practices in the official Angular style guide? In this course, Angular CLI, you'll learn how to create, cultivate, debug, test, and serve apps using the Angular CLI, language features and code snippets. First, you'll learn how to generate an application. Next you'll explore how to generate new components and services. Finally, you'll explore and run tests serve code locally, build, and serve code intended for a production deployment. By the end of this course, you'll feel confident in your new Angular knowledge that you can apply right away in your own work.

Table of contents
  1. Course Overview
  2. Overview
  3. Angular CLI Setup and Verification
  4. Generating a New Angular Application
  5. Generating Code from Blueprints
  6. Generating Routing Features
  7. Building and Serving
  8. Running Unit and End to End Tests
  9. Tooling Features

Styling Angular Applications

by Brian Treese

Mar 24, 2021 / 1h 51m

1h 51m

Start Course

Angular revolutionizes the way that you architect CSS for modern web applications. But before you can become Angular styling ninjas, you need to take a step back and consider the many different ways that things can be done. In this course, Styling Angular Applications, you'll explore how the framework aligns with web components and what that means for adding styles to components and apps in general. Throughout this course you'll develop systems geared towards organization, scale, and maintainability for HTML and CSS within Angular apps. As you get more comfortable adding and styling components within these systems, you'll consider component themes and the ways that you can transform their look under certain circumstances. By the end of this course, you'll have a strong knowledge of how Angular processes CSS and the many different ways it can be leveraged as part of an overall design system for creating beautiful, organized, maintainable, and future proof web applications.

Table of contents
  1. Course Overview
  2. Introduction
  3. How Styles Work in Angular
  4. Scalable, Maintainable CSS/SCSS Architecture in Angular
  5. Creating Component Themes
  6. It's a Wrap

Styling Applications with Angular Material

by Ajden Towfeek

Jan 4, 2022 / 3h 26m

3h 26m

Start Course

Angular Material provides a set of reusable, well-tested and accessible UI components based on Google’s Material Design specification. This course will teach you how to build aesthetic, responsive websites using the angular material library.

First, you'll learn the core concepts of material design.
Next, you'll touch on developing your environment and setting up the components and services in your library.
Finally, you will know how to build forms that validate user input.

By the end of this course, you will have an understanding of the basics required to get up and running with development and building great looking responsive websites leveraging Angular Material Design.

Table of contents
  1. Course Overview
  2. Introduction
  3. Material Design
  4. Getting Started
  5. Layout Component
  6. Displaying Real Data
  7. Using Data Tables
  8. Dialogs and Popups
  9. Wrapping Up

Build an Album Store Product Page with Angular

by Jon Friskics

Nov 9, 2017 / 2h 30m

2h 30m

Start Project

In this project you’ll follow along with our instructions and build a music album store product page with Angular 5.x. You’ll create several different components, a Service class to request JSON data over HTTP, and navigate between components with the Angular Router.

Project overview
  1. Setup15m
  2. The Product Description Component15m
  3. Creating a Service to Get Album Data35m
  4. Using Interfaces to Describe Data20m
  5. Adding the Tracklisting Component25m
  6. Displaying a List of Products25m
  7. Creating Navigation using the Angular Router15m


Once you have the basics down, it’s time to dive deeper into Angular’s foundations. The courses in this section will help you better understand Angular as a whole, as well as taking a closer look at routing and different form approaches.

Angular Fundamentals

by Jim Cooper

Mar 29, 2021 / 9h 46m

9h 46m

Start Course

Angular has become one of the most widely used web development frameworks. This course, Angular Fundamentals, will teach you the fundamentals of writing applications with Angular - whether or not you've had past experience with Angular 1. You will learn how to bootstrap an application and how to build pages and reusable elements using Angular Components and the new Angular syntax. You'll also learn the fundamentals of: routing, creating reusable services and dependency injection, building forms with validation, and communicating with the server using HTTP and observables. You'll even learn how to test all of this using unit tests and end-to-end UI tests. When you finish this course, you will have the fundamental knowledge necessary to create professional and personal websites using Angular.

Table of contents
  1. Course Overview
  2. Getting Started with Angular
  3. Creating and Communicating Between Angular Components
  4. Exploring the Angular Template Syntax
  5. Creating Reusable Angular Services
  6. Routing and Navigating Pages
  7. Collecting Data with Angular Forms and Validation
  8. Communicating Between Components
  9. Reusing Components with Content Projection
  10. Displaying Data with Pipes
  11. Understanding Angular's Dependency Injection
  12. Creating Directives and Advanced Components in Angular
  13. More Components and Custom Validators
  14. Communicating with the Server Using HTTP, Observables, and Rx
  15. Unit Testing Your Angular Code
  16. Testing Angular Components with Integrated Tests
  17. Taking an Angular App to Production

Angular Routing

by Deborah Kurata

Aug 20, 2019 / 4h 48m

4h 48m

Start Course

There is more to routing in Angular than just moving the user between multiple views of an application. In this course, Angular Routing, you'll discover how to define multiple routes and pass data to routes. Next, you'll explore how to preload data for your views and group your routes. Then, you'll learn how to guard your routes. Finally, you'll go through how to add styling and animation, and even improve performance by asynchronously loading your routes. When you are finished with this course, you'll have the knowledge you need to leverage more sophisticated routing features and support more real-world routing scenarios.

Table of contents
  1. Course Overview
  2. Introduction
  3. Routing Basics
  4. Routing to Features
  5. Route Parameters
  6. Prefetching Data Using Route Resolvers
  7. Child Routes
  8. Grouping and Component-less Routes
  9. Styling, Animating, and Watching Routes
  10. Secondary Routes
  11. Route Guards
  12. Lazy Loading
  13. Final Words

Securing Angular Apps with OpenID Connect and OAuth 2

by Brian Noyes

Dec 17, 2019 / 3h 10m

3h 10m

Start Course

Securing your Angular apps with modern, interoperable security protocols helps you ensure your apps are secure, and that they can participate in a Single Sign-on (SSO) experience across multiple apps that use the same identity provider. In this course, Securing Angular Apps with OpenID and OAuth 2, you will learn how to apply the OpenID Connect and OAuth 2 protocols to authenticate users and authorize their access to functionality and data in your apps. First, you will explore the security fundamentals and concepts you need to be aware of for Angular apps. Next, you will discover how to connect to your OpenID Connect identity provider for authentication. Lastly, you will successfully use and manage your OAuth 2 access tokens for authorization. When you are finished with this course, you will have a solid foundation for building your Angular apps with robust security and done in a way that lets you integrate with any OpenID Connect and OAuth 2 identity provider.

Table of contents
  1. Course Overview
  2. Angular App Security Big Picture
  3. Authenticating with OpenID Connect
  4. Connecting to a Different OpenID Connect Provider
  5. Authorizing Calls to Your Backend APIs with OAuth 2
  6. Enhancing the Security User Experience

Unit Testing in Angular

by Joe Eames

Aug 9, 2021 / 3h 27m

3h 27m

Start Course

Angular gives us an amazing set of tools to help us unit test our code, but all those tools and techniques need to be learned. In this course, Unit Testing in Angular, you will learn how to effectively unit test your Angular code. First, you will learn to write isolated tests to quickly and easily test services, pipes, and components. Next, you will explore integration tests, used to test your components with their templates. Then, you will see how to deal with advanced topics like asynchronous code. Finally, and most importantly, you will know what it means to write effective, maintainable unit tests. When you are finished with this course, you will feel confident in your ability to write good unit tests for your Angular projects.

Table of contents
  1. Course Overview
  2. Course Introduction
  3. Isolated Unit Tests
  4. Shallow Integration Tests
  5. Deep Integration Tests
  6. Testing DOM Interaction and Routing Components
  7. Advanced Topics

Angular Reactive Forms

by Deborah Kurata

Sep 5, 2019 / 3h 51m

3h 51m

Start Course

You can build forms in Angular with a template-driven approach using HTML and data binding, or a Reactive approach by defining the form model and validation in our component code. In this course, Angular Reactive Forms, you'll first learn how build Reactive forms. Next you'll learn how to validate user-entered data Finally, you'll wrap up learning how to save that data using HTTP. By the end of this course, you will have a simple, but fully operational Angular application that includes a Reactive form with full create, read, update, and delete (CRUD) support. You can use this application as a reference for your own development.

Table of contents
  1. Course Overview
  2. Introduction
  3. Template-driven vs. Reactive Forms
  4. Building a Reactive Form
  5. Validation
  6. Reacting to Changes
  7. Dynamically Duplicate Input Elements
  8. Reactive Forms in Context
  9. Create, Read, Update, and Delete (CRUD) Using HTTP
  10. Final Words

RxJS in Angular: Reactive Development

by Deborah Kurata

Jul 17, 2019 / 3h 47m

3h 47m

Start Course

Angular uses RxJS to create Observable data streams, but that’s just one of its many features. In this course, RxJS in Angular: Reactive Development, you will gain the ability to develop your applications with a more declarative and reactive approach using RxJS. First, you will learn RxJS terms and syntax and examine several key RxJS operators so you can better leverage this powerful technology. Next, you will discover a declarative approach to defining data streams and combining data streams to merge data from multiple sources so you can more easily display useful related data for your users. Finally, you will explore how to create streams from user actions, such as a selection, and merge the data streams with the action streams to react to those actions, automatically updating the view as needed. When you are finished with this course, you will have the skills and knowledge of RxJS needed to incorporate the power of Observable streams into your applications, providing your users with a more performant and interactive application.

Table of contents
  1. Course Overview
  2. Introduction
  3. RxJS Terms and Syntax
  4. RxJS Operators
  5. Going Reactive
  6. Mapping Returned Data
  7. Combining Streams
  8. Reacting to Actions
  9. Reacting to Actions: Examples
  10. Caching Observables
  11. Higher-order Mapping Operators
  12. Combining All the Streams
  13. Final Words

Angular NgRx: Getting Started

by Duncan Hunter

Jun 30, 2020 / 4h 14m

4h 14m

Start Course

At the core of state management in Angular is a thorough knowledge of the Redux pattern and the NgRx library. NgRx is a powerful library for organizing and managing state and interactions with the state in your Angular applications following the Redux pattern. In this course, Angular NgRx: Getting Started, you will learn the three principles of the Redux pattern that NgRx follows and the benefits this brings to your Angular applications. First, you will discover how to define a single store for all of your application state, access data from the store with selectors, dispatch actions using action creators, and process those actions with reducers to create new state. Next, you will explore how to handle side effects, such as asynchronous operations, with effects. Finally, you will learn how to architect your Angular applications for scale and performance using the container and presentational component patterns. When you are finished with this course, you will have a foundational knowledge of NgRx that will help you move forward to develop larger or more complex Angular application.

Table of contents
  1. Course Overview
  2. Introduction
  3. The Redux Pattern
  4. First Look at NgRx
  5. Developer Tools and Debugging
  6. Strongly Typing the State
  7. Strongly Typing Actions with Action Creators
  8. Working with Effects
  9. Performing Update Operations
  10. Architectural Considerations
  11. Final Words

Angular HTTP Communication

by Brice Wilson

Jul 8, 2021 / 2h 33m

2h 33m

Start Course

Nothing is more fundamental to a web application than the HTTP protocol. In Angular HTTP Communication, you will learn sophisticated techniques to help you take full advantage of the HTTP client features built-in to Angular. First, you will explore how to communicate with a REST service. Next, you will discover how to modify HTTP requests and responses with interceptors and create a client-side cache. Finally, you will create unit tests to make sure your HTTP requests always do what you expect. When you're finished with this course, you will have an advanced understanding of the HTTP features included with Angular and the practical skills required to build well-structured, performance-oriented Angular applications that take full advantage of Angular's HTTP client.

Table of contents
  1. Course Overview
  2. Configuring an Application to Make HTTP Requests
  3. Consuming REST Services
  4. Advanced HTTP Requests and Error Handling
  5. Creating Interceptors
  6. Caching HTTP Requests with Interceptors
  7. Testing HTTP Requests

Angular Services

by Brice Wilson

Jul 16, 2021 / 2h 17m

2h 17m

Start Course

Services are a core building block in all Angular applications. In this course, Angular Services, you'll learn how to create and deliver the discrete, functional services needed to meet all of your user requirements. First, you'll explore how to create services. Next, you'll discover how to provide those services to Angular's dependency injection system. Finally, you'll delve into configuring injectors to precisely control when and where your services are delivered. When you're finished with this course, you'll have the foundational understanding and practical skills required to build well-structured Angular applications that take full advantage of services and Angular's dependency injection system.

Table of contents
  1. Course Overview
  2. The Role Services Play in an Angular Application
  3. Creating and Using Services
  4. Understanding and Configuring Dependency Injection
  5. Creating Asynchronous Services
  6. Consuming Common Built-in Services


After you become comfortable putting an Angular app together, advanced courses will help you optimize your development process.

Angular Best Practices

by Jim Cooper

Nov 19, 2021 / 1h 48m

1h 48m

Start Course

It's easy to create simple applications in Angular, but once you start building larger, more complex applications, you can quickly run into legibility, scalability, and performance issues if you're not careful. In this course, Angular Best Practices, you'll learn best practices in Angular. First, you'll discover the Angular project and folder organization. Next, you'll explore Angular module organization and how to use Core, shared, and feature modules. Then, you'll learn about Angular component, service best practices, and some really important performance best practices to ensure you're building fast and scalable Angular applications. Finally, you'll cover a few basic coding best practices while you're at it. By the end of this course, you'll know all the key best practices to help you build respectable, high quality, and scalable Angular applications.

Table of contents
  1. Course Overview
  2. Application Structure and Organization
  3. General Coding Best Practices
  4. Angular Module Organization
  5. Angular Components Best Practices
  6. Angular Services Best Practices
  7. Performance Best Practices

Angular Architecture and Best Practices

by Dan Wahlin

Jan 15, 2019 / 5h 21m

5h 21m

Start Course

There's a lot of questions out there about the core concepts of Angular, including: are you following established best practices? How easy will it be to maintain and refactor the application in the future? If you're starting a new application from scratch, what application architecture should be used? In this course, Angular Architecture and Best Practices, you'll learn architectural concepts, best practices, and how to solve some of the more challenging tasks that come up. First, you'll discover component communication techniques. Next, you'll learn state management and code organization. Finally, you'll explore general best practices, performance considerations, and more. When you're finished with this course, you'll have the skills and knowledge of Angular application architecture needed to think through the process of building a solid application architecture that is easy to refactor and maintain.

Table of contents
  1. Course Overview
  2. Introduction
  3. Planning the Application Architecture
  4. Organizing Features and Modules
  5. Structuring Components
  6. Component Communication
  7. State Management
  8. Additional Considerations
  9. Course Summary
Offer Code *
Email * First name * Last name *
Country *

* Required field

Opt in for the latest promotions and events. You may unsubscribe at any time. Privacy Policy

By providing my phone number to Pluralsight and toggling this feature on, I agree and acknowledge that Pluralsight may use that number to contact me for marketing purposes, including using autodialed or pre-recorded calls and text messages. I understand that consent is not required as a condition of purchase from Pluralsight.

By activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit
Learning Paths


  • Number of Courses18 courses
  • Duration65 hours
  • Skill IQ available Skill IQ
  • 1 Project

Angular is a complete JavaScript framework for creating dynamic and interactive applications in HTML. Aside from being one of the hottest frameworks on the web, Angular is easy to learn yet powerful enough to help you develop complex single-page web applications. This path includes content covering Angular 2 and beyond. For the original version, see our AngularJS path.

Courses in this path


After you become comfortable putting an Angular app together, advanced courses will help you optimize your development process.

Join our learners and upskill
in leading technologies