Installation pre-requisites
June 23, 2026 · View on GitHub
Angular PWA Course - Build the future of the Web Today
This repository contains the code of the Angular PWA Course - Build the future of the Web Today.
Installation pre-requisites
IMPORTANT: Please use NPM 5 or above, to make sure the package-lock.json is used.
For running this project we need and npm installed on our machine. These are some tutorials to install node in different operating systems:
Its important to install the latest version of Node
Installing the Angular CLI
With the following command the angular-cli will be installed globally in your machine:
npm install -g @angular/cli
How To install this repository
We can install the master branch using the following commands:
git clone https://github.com/angular-university/angular-pwa-course.git
This repository is made of several separate npm modules, that are installable separately. For example, to run the au-input module, we can do the following:
cd angular-pwa-course
npm install
Its also possible to install the modules as usual using npm:
npm install
NPM 5 or above has the big advantage that if you use it you will be installing the exact same dependencies than I installed in my machine, so you wont run into issues caused by semantic versioning updates.
This should take a couple of minutes. If there are issues, please post the complete error message in the Questions section of the course.
Running the Development Backend Server
We can start the sample application backend with the following command:
npm run server
This is a small Node REST API server.
Running the Development UI Server
To run the frontend part of our code, we will use the Angular CLI:
npm start
The development application is visible at port 4200 - http://localhost:4200, but in this course we will be mostly running the application production mode.
Running the application in production mode, with the service worker active
In order to build the application in production mode, we use this command:
ng build --prod
This is going to output the production application in the dist folder, with the service worker active. To run the application we will need an HTTP server, so let's install http-server:
npm install -g http-server
We can then run the production application by doing:
cd dist
http-server -c-1 .
And now the production application should be available at port 8080 - http://localhost:8080.
Note: Please check in the server startup log to see what port is http-server using. By default its 8080, but it that port is busy then 8081 will used, etc.
Shortcut command for building the application in production mode
We will be building the application often in production mode. This shortcut command will build the application in production mode and start http-server all in one go:
npm run start:prod
Getting the code at the beginning of each section
This repository has multiple branches, have a look at the beginning of each section to see the name of the branch.
At certain points along the course, you will be asked to checkout other remote branches other than master. You can view all branches that you have available remotely using the following command:
git branch -a
The remote branches have their starting in origin, such as for example 1-notifications.
We can checkout the remote branch and start tracking it with a local branch that has the same name, by using the following command:
git checkout -b 1-notifications origin/1-notifications
It's also possible to download a ZIP file for a given branch, using the branch dropdown on this page on the top left, and then selecting the Clone or Download / Download as ZIP button.
Angular University Courses
Here is a list of all the courses of the Angular University.
Angular For Beginners
Angular For Beginners — Establish a solid layer of fundamentals, learn what's under the hood of Angular.
Angular Forms In Depth (Signals Edition)
Angular Forms In Depth - Signals Edition — Build complex enterprise data forms with Angular Signal Forms.
Angular AI In Depth (with Cursor and Claude Code)
Angular AI In Depth — Build modern full-stack Angular applications with signals, standalone components, zoneless architecture, and OpenAI integration using Claude Code.
Angular Testing In Depth (Signals Edition)
Angular Testing In Depth — Write robust, maintainable tests for modern signal-based Angular applications.
Angular Core Deep Dive
Angular Core Deep Dive — A detailed walk-through of the most important part of Angular - the Core and Common modules.
Modern Angular With Signals
Modern Angular With Signals — Learn signals in depth. Build a modern signal-based application with async/await, standalone components and optional RxJs.
Typescript: The Ultimate Bootcamp
Typescript: The Ultimate Bootcamp — Learn in-depth all the language fundamentals. Practice by building practical projects in Node, React and Angular.
RxJs In Practice
RxJs In Practice — Understand the RxJs Observable pattern, learn the RxJs Operators via practical examples.
Angular Forms In Depth
Angular Forms In Depth — Build complex enterprise data forms with template-driven and reactive forms.
Angular Router In Depth
Angular Router In Depth — Build large-scale Single Page Applications with the powerful Angular Router.
Reactive Angular Course
Reactive Angular Course — How to build Angular applications in Reactive style using plain RxJs - patterns, anti-patterns, lightweight state management.
NgRx (with NgRx Data) - The Complete Guide
NgRx (with NgRx Data) - The Complete Guide — Learn the modern NgRx Ecosystem, including NgRx Data, Store, Effects, Router Store, NgRx Entity, and DevTools.
Angular Testing Course
Angular Testing Course — A complete guide to Angular Unit Testing and E2E Testing, including Testing best practices and continuous integration.
Angular Security Course - Web Security Fundamentals
Angular Security Course — Learn Web Security Fundamentals and apply them to defend an Angular / Node Application from multiple types of attacks.
Angular Material In Depth
Angular Material In Depth — Learn in depth some of the most advanced components of the Angular Material UI widget library.
Angular SSR In Depth
Angular SSR In Depth — Use Angular on the server too! Learn Angular Server-Side Rendering.
Angular Progressive Web Apps (PWA) Course
Angular PWA Course — Learn Angular Progressive Web Applications, build the future of the Web Today.
Firebase & AngularFire In Depth
Firebase & AngularFire In Depth — Full stack Development with Angular, Firestore, Firebase Storage & Hosting, Firebase Cloud Functions & AngularFire.
NestJs In Practice (with MongoDB)
NestJs In Practice — Build a modern REST backend using Typescript and the familiar Angular API.
Stripe Payments In Practice
Stripe Payments In Practice — Build your own online eCommerce store and subscription membership website with Stripe, Firebase, Node & Express.
Angular Advanced Library Laboratory: Build Your Own Library
Angular Advanced Library Laboratory — Learn Advanced Angular functionality typically used in Library Development. Advanced Components, Directives, Testing, Npm.
Angular University Extra Tutorials
Angular University Extra Tutorials — Extra tutorials covering developer preview features or isolated topics.
Archived Courses
These courses are archived and replaced with newer versions, but are still accessible to subscribers.
NgRx In Depth (Archived)
NgRx In Depth — Learn the modern NgRx Ecosystem, including Store, Effects, Router Store, NgRx Entity, Dev Tools and Schematics.
Serverless Angular with Firebase & AngularFire (Archived)
Serverless Angular with Firebase — Full stack Development with Angular, Firestore, Firebase Storage & Hosting, Firebase Cloud Functions & AngularFire.
RxJs and Reactive Patterns Angular Architecture Course (Archived)
RxJs and Reactive Patterns Angular Architecture Course — Learn the core RxJs Observable Pattern and many other Design Patterns for building Reactive Angular Applications.
Angular Material Course (Archived)
Angular Material Course — Jumpstart your Application with a complete set of Material Design UI Widgets.
Build a Web App with Angular and Firebase (Archived)
Build a Web App with Angular and Firebase — Put all the concepts together to build a fully running Angular application using Firebase as the database.
Angular NgRx Store Reactive Extensions Architecture Course (Archived)
Angular NgRx Store Reactive Extensions Architecture Course — Learn how to use the Angular NgRx Reactive Extensions and its Tooling to build a complete application.
Angular RxJs Jumpstart (Archived)
Angular RxJs Jumpstart — Learn RxJs quickly, apply it to learn how to use the HTTP module effectively.
Angular Router (Archived)
Angular Router — Build Single Page Applications with Angular and its powerful Router.
Angular Universal Course (Archived)
Angular Universal Course — Use Angular on the server too! Learn Angular Server-Side Rendering.
Angular Forms (Archived)
Angular Forms — Learn how to build validatable and user-friendly data Forms effectively.
The Complete Typescript Course (Archived)
The Complete Typescript Course — Complete Guide to Typescript From Scratch: Learn the language in-depth and use it to build a Node REST API.