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

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


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

Dec 13, 2017 / 1h 7m

1h 7m

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 Overview1m
  2. Introduction12m
  3. Benefits & Features of Angular10m
  4. Angular Architecture10m
  5. Tooling12m
  6. Tips, Tricks, & Gotchas11m
  7. Angular: Present & Future9m

Angular: Getting Started

by Deborah Kurata

Oct 19, 2016 / 5h 41m

5h 41m

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 comimg 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 Overview1m
  2. Introduction12m
  3. First Things First22m
  4. Introduction to Components27m
  5. Templates, Interpolation, and Directives33m
  6. Data Binding & Pipes21m
  7. More on Components31m
  8. Building Nested Components25m
  9. Services and Dependency Injection18m
  10. Retrieving Data Using HTTP27m
  11. Navigation and Routing Basics27m
  12. Navigation and Routing Additional Techniques21m
  13. Angular Modules40m
  14. Building, Testing, and Deploying with the CLI22m
  15. Final Words6m

Angular CLI

by John Papa

Apr 5, 2017 / 3h 22m

3h 22m

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 Overview1m
  2. Overview9m
  3. Angular CLI Setup and Verification12m
  4. Generating a New Angular Application29m
  5. Generating Code from Blueprints28m
  6. Generating Routing Features20m
  7. Building and Serving38m
  8. Running Unit and End to End Tests28m
  9. Tooling Features33m

Angular Forms

by Mark Zamoyta

Nov 4, 2016 / 2h 39m

2h 39m

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 forms using the Angular 2 framework. First, you'll learn how to style them, use data binding and then validate your forms. Next, you'll learn about observable's and posting your forms to a server. Finally, you'll also explore third-party form controls which offer much more functionality than standard HTML. 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 Overview1m
  2. Introduction9m
  3. Form Basics in Angular 223m
  4. Data Binding in Angular Forms17m
  5. Form Validation34m
  6. HTTP Form Posting and Data Access39m
  7. Third-party Form Controls34m

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

Jan 18, 2017 / 9h 35m

9h 35m

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 Overview2m
  2. Getting Started with Angular38m
  3. Creating and Communicating Between Angular Components33m
  4. Exploring the Angular Template Syntax32m
  5. Creating Reusable Angular Services16m
  6. Routing and Navigating Pages49m
  7. Collecting Data with Angular Forms and Validation1h 14m
  8. Communicating Between Components11m
  9. Reusing Components with Content Projection13m
  10. Displaying Data with Pipes33m
  11. Understanding Angular's Dependency Injection24m
  12. Creating Directives and Advanced Components in Angular45m
  13. More Components and Custom Validators35m
  14. Communicating with the Server Using HTTP, Observables, and Rx1h 7m
  15. Unit Testing Your Angular Code36m
  16. Testing Angular Components with Integrated Tests29m
  17. Taking an Angular App to Production32m

Angular Routing

by Deborah Kurata

Mar 30, 2017 / 4h 47m

4h 47m

Start Course

There is more to routing in Angular version 2+ 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 Overview1m
  2. Introduction14m
  3. Routing Basics32m
  4. Routing to Features26m
  5. Route Parameters42m
  6. Prefetching Data Using Route Resolvers29m
  7. Child Routes29m
  8. Grouping and Component-less Routes7m
  9. Styling, Animating, and Watching Routes22m
  10. Secondary Routes21m
  11. Route Guards27m
  12. Lazy Loading28m
  13. Final Words5m

Securing Angular Apps with OpenID Connect and OAuth2

by Brian Noyes

Jul 27, 2018 / 2h 30m

2h 30m

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 Overview1m
  2. Angular App Security Big Picture34m
  3. Authenticating with OpenID Connect53m
  4. Authorizing Calls to Your Backend APIs with OAuth234m
  5. Enhancing the User Experience with Client Security Context27m

Unit Testing in Angular

by Joe Eames

May 22, 2018 / 3h 20m

3h 20m

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 Overview1m
  2. Course Introduction30m
  3. Isolated Unit Tests28m
  4. Shallow Integration Tests44m
  5. Deep Integration Tests29m
  6. Testing DOM Interaction and Routing Components44m
  7. Advanced Topics21m

Angular Reactive Forms

by Deborah Kurata

Jan 12, 2017 / 3h 52m

3h 52m

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 Overview1m
  2. Introduction13m
  3. Template-driven vs. Reactive Forms32m
  4. Building a Reactive Form29m
  5. Validation35m
  6. Reacting to Changes19m
  7. Dynamically Duplicate Input Elements22m
  8. Reactive Form in Context27m
  9. Create, Read, Update, and Delete (CRUD) Using HTTP44m
  10. Final Words5m

Angular NgRx: Getting Started

by Deborah Kurata

Jun 25, 2018 / 4h 4m

4h 4m

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 Overview2m
  2. Introduction 18m
  3. The Redux Pattern 8m
  4. First Look at NgRx 39m
  5. Developer Tools and Debugging 10m
  6. Strongly Typing the State 31m
  7. Strongly Typing Actions with Action Creators 38m
  8. Working with Effects 31m
  9. Performing Update Operations26m
  10. Architectural Considerations27m
  11. Final Words10m

Angular HTTP Communication

by Brice Wilson

Mar 9, 2018 / 2h 27m

2h 27m

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 Overview1m
  2. Configuring an Application to Make HTTP Requests15m
  3. Consuming REST Services43m
  4. Advanced HTTP Requests and Error Handling22m
  5. Creating Interceptors20m
  6. Caching HTTP Requests with Interceptors19m
  7. Testing HTTP Requests24m

Angular Services

by Brice Wilson

Oct 3, 2017 / 2h 28m

2h 28m

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 Overview1m
  2. The Role Services Play in an Angular Application15m
  3. Creating and Using Services31m
  4. Understanding and Configuring Dependency Injection38m
  5. Creating Asynchronous Services47m
  6. Consuming Common Built-in Services13m


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

Angular Best Practices

by Jim Cooper

Oct 23, 2017 / 1h 41m

1h 41m

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 Overview1m
  2. Getting Started with Angular22m
  3. General Coding Best Practices14m
  4. Angular Module Organization12m
  5. Angular Components Best Practices 18m
  6. Angular Services Best Practices7m
  7. Performance Best Practices 23m

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.