Angular Material In Depth

In-depth guided tour to the Angular Material component library (in Angular 13)

This course covers in detail the Angular Material component library, and comes with a running Github repo.

What you’ll learn

  • Code in Github repository with downloadable ZIP files per section.
  • Learn how to use the Angular Material Library.
  • Learn how to design responsive applications with Angular Material.
  • Learn how to setup the Navigation Menu of your Angular Material Application.
  • Learn how to use the most commonly needed Angular Material Form Widgets.
  • Master the Angular Material Data Table, learn server-side Pagination, Sorting and Filtering.
  • Learn how to build Angular Material Custom Dialogs.
  • Learn how to build an Angular Material Custom Theme.
  • Learn the Angular Material Tree component, Virtual Scrolling and other advanced components.

Course Content

  • Introduction –> 5 lectures • 30min.
  • Angular Material Navigation and Container Components –> 22 lectures • 3hr 1min.
  • Angular Material Dialogs –> 3 lectures • 30min.
  • Angular Material Advanced Features –> 2 lectures • 26min.
  • Responsive Design With Angular Material –> 5 lectures • 37min.
  • Angular Material Tree Component –> 3 lectures • 41min.
  • Virtual Scrolling and Custom Themes –> 2 lectures • 27min.
  • Conclusion –> 2 lectures • 9min.

Angular Material In Depth


This course covers in detail the Angular Material component library, and comes with a running Github repo.

This Course in a Nutshell

Angular is an amazing framework that does a lot of the work for us, but one thing that the core modules don’t do by themselves is provide you with commonly used user interface components.

Imagine what it would be like to use Angular, but have to develop all your dropdown boxes, date pickers, menus, and all those commonly needed and very standard components every time that you need to develop an application.

This would be not only impractical, but in most cases impossible as some of these components might take weeks to months to develop and test given their complexity!

Also, how about styling and theming your application and make sure that everything looks neat and professional?

Imagine what it would like to have to style your whole application from scratch, from a completely empty page. This is a huge amount of work and custom development that most companies prefer to avoid.

And so this is where Angular Material comes in! 🙂

Angular Material is an amazing component suite for Angular which is based on Material Design (a UI development standard from Google).

With Angular Material, you can quickly give your applications that typical Android-like Material Design look and feel, just by adding a few components and styles to your application.

Also, you will never have to develop your own date picker and many other commonly needed components, everything is already available from the beginning of your project.

These are very high quality components that have been extensively tested in thousands of applications, including for usability, user-friendliness and responsiveness.

These components, developed by Google themselves are some of the highest quality UI components that you can choose to build your application, and they are ready to be used from day one in your project.

Course Overview

In this course we are going to build a sample Angular application from scratch using Angular Material.

We are going to first set up the menu structure of the application, and then we are going to display some data on the screen using commonly used container components like tab containers, and we will apply some Material Design principles.

We will then learn how to use some of the most commonly needed form controls, like inputs and text areas, date pickers, dropdowns, radio buttons and checkboxes, and other commonly used form components.

We will build a complex form using Angular Material, and show how to properly display form control errors. We will then learn how to use Material data table component to display tabulated data, including how to credit in-place editable tables and expandable table rows.

We will show how to paginate the data in the data table, and we will display a loading indicator to the user while the data gets loaded.

We will also cover in detail a very commonly used feature which are dialogs, and discuss when to use them and when not to use them and talk about some useful best practices.

We will then cover some of the most advanced components in the Angular Material suite, including it’s powerful drag and drop features, the responsive design capabilities of Angular Material, and we will cover also in detail how to use the material tree component.

We will learn how to handle large amounts of data using virtual scrolling, and we will finish the course by learning how to create your own custom themes.

Table of Contents

This course will go over the following topics:

  • Set up Angular Material from scratch
  • navigation and containers, side menu, tab container
  • display data with cards, use some buttons
  • commonly used form controls and buttons – create course form
  • inputs and text areas
  • radio buttons, checkboxes, tooltips
  • date picker, date/time formatting
  • Displaying form errors
  • Angular Data Table in depth
  • Editable in-line table
  • Expandable table rows
  • pagination and loading indicator
  • Overlays, best practices to use them
  • Drag and Drop
  • Responsive design with mat-grid-list
  • Responsive breakpoint observers
  • Tree component
  • Virtual scrolling – handling large amounts of data
  • Custom Themes
  • Switching themes at runtime

What Will You Learn In this Course?

At the end of this course, you will feel very comfortable using the Angular Material library to build and style your applications.

You will know how to add Angular Material to an existing Angular application, and you will be familiar with most of its more commonly used components, as well as with many of the most advanced components.

Have a look at the course free lessons below, and please enjoy the course!

Get Tutorial