Material Design for Angular 2
This is the home for the Angular team's Material Design components built on top of Angular 2.
Quick links
Google group, Contributing, Plunker Template
Getting started
See our Getting Started Guide if you're building your first project with Angular Material 2.
Project status
Angular Material 2 is currently in alpha and under active development. During alpha, breaking API and behavior changes will be occurring regularly.
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 Good for community contribution
label.
High level items planned for September 2016:
- Work on Angular core towards 2.0.0 final
- Preparing for conferences (Angular Connect and ng-europe)
- Final features for dialog
- Initial version of snackbar.
- Additional behaviors for menu, start design for select.
- Finalize high-level design details for data-table.
Feature status:
Feature | Status | Docs | Issue |
---|---|---|---|
button | Available | README | - |
cards | Available | README | - |
checkbox | Available | README | - |
radio | Available | README | - |
input | Available | README | - |
sidenav | Available | README | - |
toolbar | Available | README | - |
list | Available | README | #107 |
grid-list | Available | README | - |
icon | Available | README | - |
progress-circle | Available | README | - |
progress-bar | Available | README | - |
tabs | Available | README | - |
slide-toggle | Available | README | - |
button-toggle | Available | README | - |
slider | Available | README | - |
menu | Initial version, needs enhancements | README | #119 |
tooltip | Initial version, needs enhancements | README | - |
ripples | Available, but needs to be applied | README | #108 |
dialog | Started, not yet ready for release | - | #114 |
snackbar / toast | Proof-of-concept | - | #115 |
select | Design started | - | #118 |
textarea | Not started | - | #546 |
autocomplete | Not started | - | #117 |
chips | Not started | - | #120 |
theming | In master, not released, some bugs | Guide | #123 |
prod build | Not started | - | - |
docs site | UX design and tooling in progress | - | - |
typography | Not started | - | #205 |
layout | Not started | - | - |
fab speed-dial | Not started | - | #860 |
fab toolbar | Not started | - | - |
bottom-sheet | Not started | - | - |
bottom-nav | Not started | - | #408 |
virtual-repeat | Not started | - | #823 |
datepicker | Not started | - | #675 |
data-table | Not started | - | #581 |
stepper | Not started | - | #508 |
"Available" means that the components or feature is published and available for use, but may still be missing some behaviors or polish.
The goal of Angular Material
Our goal is to build a set of high-quality UI components built with Angular 2 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.