This is the home for the Angular team's Material Design components built on top of Angular 2.
The alpha has begun! See the changelog for more information.
Individual components can be installed with npm
:
# The core module is required as a peerDependency for other components
npm install --save @angular2-material/core @angular2-material/checkbox
If you're using SystemJS as your module loader, your configuration for the angular-material packages should look like:
// The core package is required as a peerDependency for other components.
'@angular2-material/core': {
format: 'cjs',
defaultExtension: 'js',
main: 'core.js'
},
'@angular2-material/checkbox': {
format: 'cjs',
defaultExtension: 'js',
main: 'checkbox.js'
},
During alpha, breaking API and behavior changes will be occurring regularly.
Check out our directory of design documents for more insight into our process.
We are still getting our CI infrastructure (tests, lint etc.) set up, as well as building out
the core library pieces that components will be built upon. If you'd like to contribute,
please 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.
Our goal is to build a set of high-quality UI components built with Angular 2 and TypeScript, following the Material Design spec, that are consumable by both JavaScript and Dart. These components will serve as an example of how to write Angular code following best practices.
- 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.
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.