Angular Material is a UI component library for Angular that provides a set of pre-built UI components, such as buttons, cards, and input fields. It follows the Material Design guidelines, which is a design system created by Google that emphasizes a clean and modern design. Using Angular Material, developers can quickly build professional and responsive user interfaces for their Angular applications. In this blog post, we will discuss how to use Angular Material to build professional UI components.

Installing Angular Material

To get started with Angular Material, you need to install it in your Angular project. You can install Angular Material using npm, which is the package manager for Node.js. Once installed, you can import the necessary Angular Material modules in your Angular application.

The first step to building UI components with Angular Material is to install it. This can be done using the following command:

ng add @angular/material

This command installs Angular Material and adds the necessary dependencies to the application.

Importing Angular Material modules

After installing Angular Material, we need to import the necessary modules. These modules provide the pre-built UI components that we can use in our application. Here are some commonly used Angular Material modules:

  • MatToolbarModule: provides a toolbar component for the application.
  • MatInputModule: provides input field components for the application.
  • MatButtonModule: provides button components for the application.
  • MatCardModule: provides a card component for the application.

These modules can be imported in the application module file as follows:

import { MatToolbarModule } from '@angular/material/toolbar';
import { MatInputModule } from '@angular/material/input';
import { MatButtonModule } from '@angular/material/button';
import { MatCardModule } from '@angular/material/card';

  imports: [MatToolbarModule, MatInputModule, MatButtonModule, MatCardModule],
  exports: [MatToolbarModule, MatInputModule, MatButtonModule, MatCardModule],
export class MaterialModule {}

Building UI components with Angular Material

Once the Angular Material modules are imported, we can use the pre-built components to build our UI components. Let's build a simple login form component with Angular Material components. Here is the code for the component template:

      <input matInput placeholder="Email" />
      <input matInput type="password" placeholder="Password" />
    <button mat-raised-button color="primary">Login</button>

In this example, we have used the MatCardModule to provide a card component for the login form. Inside the card, we have used the MatFormFieldModule to provide input fields for email and password, and the MatButtonModule to provide a button component.

Styling Angular Material components

Angular Material provides default styling for its components, which can be customized to match the application's design. We can use CSS classes to modify the styles of Angular Material components. For example, we can modify the button component's color by adding the mat-primary class to it.

In conclusion, Angular Material is a powerful UI component library that provides pre-built UI components that adhere to Google's Material Design specifications. It enables developers to build professional-looking, responsive, and accessible user interfaces quickly. In this blog post, we have discussed how to use Angular Material to build UI components in an Angular application with an example. By following these practices, developers can build professional-looking UI components quickly and easily using Angular Material.

Recommended Posts

View All

Angular 13 NgModule Tutorial with Example

NgModule is an Angular decorator that organises your single-page Angular application&amp;#039;s services, pipelines, directives, and components.

Defining Metadata with a Decorator in Angular

Learn how to define metadata with a decorator in Angular. Our comprehensive guide will teach you how to simplify your code and enhance its performance...


A programming language is mainly used for developing apps for desktop and mobile devices.

Advanced Techniques for Optimizing Angular Performance

Learn advanced techniques for optimizing Angular performance, including lazy loading, AOT compilation, change detection strategies, caching strategies...


Angular is one of the most popular JavaScript-based frontend frameworks in the world and also very popular here on GitHub.