Material Design components for Angular
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci build: setup bazel remote execution (#14641) Jan 16, 2019
.github chore: reenable branch-manager (#14767) Jan 9, 2019
e2e build: run e2e tests with bazel (#14656) Jan 11, 2019
guides docs(cdk-stepper): add guide to create stepper (#14710) Jan 16, 2019
scripts build: setup bazel remote execution (#14641) Jan 16, 2019
src fix(menu): not unsubscribing from close stream if trigger is destroyed ( Jan 16, 2019
test build: run e2e tests with bazel (#14656) Jan 11, 2019
tools feat(overlay): allow for connected overlay to be positioned relative … Jan 16, 2019
.bazelignore build: update to Angular 7.0.1 http_archive & @angular/bazel package (#… Oct 29, 2018
.bazelrc build: publish docs-content bazel artifacts (#14634) Jan 16, 2019
.clang-format chore(): add clang-format config Jan 4, 2016
.firebaserc feat(table): support sticky headers, footers, and columns (#11483) Jun 7, 2018
.gitignore build: remove dashboard (#14023) Nov 7, 2018
BUILD.bazel build: test cdk with bazel (#13575) Oct 15, 2018 chore: bump version to 7.2.1 w/ changelog (#14748) Jan 7, 2019 build: restructure demo-app in favor of bazel (#13965) Nov 15, 2018 chore: remove noRxjsPatchImportsRule (#10765) Apr 10, 2018 chore: update contributing guide (#9200) Jan 2, 2018 docs: update dev instructions for the repo (#13890) Oct 31, 2018
LICENSE chore: bump year (#14688) Jan 3, 2019 build: no longer use travis-ci (#14064) Nov 9, 2018
WORKSPACE build: run e2e tests with bazel (#14656) Jan 11, 2019
build-config.js build: fix invalid required angular version (#12089) Aug 9, 2018
firebase.json build: fix dev-app deployment to firebase (#14529) Dec 18, 2018
gulpfile.js build: throw when running build tasks inside of a directory with spac… Nov 14, 2018
index.bzl fix: bazel support for downstream apps (#13836) Nov 2, 2018
package.json build: publish docs-content bazel artifacts (#14634) Jan 16, 2019
packages.bzl build: make sass bazel targets consistent (#14186) Nov 27, 2018
stylelint-config.json build: remove dashboard (#14023) Nov 7, 2018
tsconfig.json build: replace deprecated tslint rule with compiler option (#13186) Dec 12, 2018
tslint.json build: replace custom file casing rule with integrated rule (#14618) Jan 2, 2019
yarn.lock build: publish docs-content bazel artifacts (#14634) Jan 16, 2019

Material Design for Angular

npm version Build status Gitter

This is the home for the Angular team's Material Design components built for and with Angular.

Quick links

Documentation, demos, and guides | Google group | Contributing | Plunker Template | StackBlitz Template

Getting started

See our Getting Started Guide if you're building your first project with Angular Material.

Check out our directory of design documents for more insight into our process.

If you'd like to contribute, you must follow our contributing guidelines. You can look through the issues (which should be up-to-date on who is working on which features and which pieces are blocked) and make a comment. Also see our help wanted label.

High level stuff planned for Q4 2018 (October - Dec):

  • Improve our own build and automation tooling
  • Fix bugs and reduce some technical debt inside Google
  • Working on long-term plans on how to collaborate with the MDC Web team
  • Designs for advanced table improvements (column resize, selection directives, inline-edit)

Available features

Feature Notes Docs
autocomplete Docs
badge Docs
bottom-sheet Docs
button Docs
button-toggle Docs
cards Docs
checkbox Docs
chips Docs
data-table Docs
datepicker Docs
dialog Docs
divider Docs
drag-drop Landing in v7
expansion-panel Docs
grid-list Docs
icon Docs
input Docs
list Docs
menu Docs
paginator Docs
progress-bar Docs
progress-spinner Docs
radio Docs
ripples Docs
select Docs
sidenav Docs
slide-toggle Docs
slider Docs
snackbar / toast Docs
sort-header Docs
stepper Docs
tabs Docs
textarea Docs
toolbar Docs
tooltip Docs
tree Docs
virtual-scroll Landing in v7
---------------- ------------------------------------------------------ ------------
theming Guide
typography Guide
layout See angular/flex-layout Wiki
cdk Docs

In progress, planned, and non-planned features

Feature Status Docs Issue
fab speed-dial Not started, not planned - #860
fab toolbar Not started, not planned - -
bottom-nav Not started, not planned - #408

The goal of Angular Material

Our goal is to build a set of high-quality UI components built with Angular and TypeScript, following the Material Design spec. These components will serve as an example of how to write Angular code following best practices.

What do we mean by "high-quality"?

  • Internationalized and accessible so that all users can use them.
  • Straightforward APIs that don't confuse developers.
  • Behave as expected across a wide variety of use-cases without bugs.
  • Behavior is well-tested with both unit and integration tests.
  • Customizable within the bounds of the Material Design specification.
  • Performance cost is minimized.
  • Code is clean and well-documented to serve as an example for Angular devs.

Browser and screen reader support

Angular Material supports the most recent two versions of all major browsers: Chrome (including Android), Firefox, Safari (including iOS), and IE11 / Edge

We also aim for great user experience with the following screen readers:

  • NVDA and JAWS with IE / FF / Chrome (on Windows).
  • VoiceOver with Safari on iOS and Safari / Chrome on OSX.
  • TalkBack with Chrome on Android.