/material-ui

React components that implement Google's Material Design.

Primary LanguageJavaScriptMIT LicenseMIT

Material-UI logo

Material-UI

React components that implement Google's Material Design.

npm package npm download CircleCI Gitter Coverage Status CII Best Practices Code style Follow on Twitter PeerDependencies Dependencies DevDependencies Average time to resolve an issue

Installation

Material-UI is available as an npm package.

Stable channel (v0.x)

npm install material-ui

Pre-release channel (v1-beta) (Recommended for new projects.)

npm install material-ui@next

Please note that @next will only point to pre-releases; to get the latest stable release use @latest instead.

Supporting Material-UI

Material-UI is an MIT-licensed open source project. It's an independent project with ongoing development made possible thanks to the support of these awesome backers. If you'd like to join them, please consider:

Your contributions, donations, and sponsorship allow us to build a sustainable organization. They directly support office hours, continued enhancements, great documentation and learning materials!

What's the difference between Patreon and OpenCollective?

Funds donated via Patreon directly support Olivier Tassinari's work on Material-UI. Funds donated via OpenCollective also support Olivier, but will be shared amongst other contributors and pay for operating expenses. These funds are managed transparently through the OpenCollective website. Your name/logo will receive proper recognition and exposure by donating on either platform.

Gold Sponsors

Gold Sponsors are those who have pledged $500/month and more to Material-UI.

0 1

0 1 2 3 4 5 6 7 8 9

Usage (v1-beta)

Here is a quick example to get you started, it's all you need:

import React from 'react';
import { render } from 'react-dom';
import Button from 'material-ui/Button';

function App() {
  return (
    <Button variant="raised" color="primary">
      Hello World
    </Button>
  );
}

render(<App />, document.querySelector('#app'));

Yes, it's really all you need to get started as you can see in this live and interactive demo:

Edit Button

Should I start with v1-beta?

We often get this question:

Should I start with v1-beta? Beta is beta, so it's not a final product and I'm not guaranteed anything.

Yes, you should.

Some users are starting projects with v0.x which given the quality and stability of v1 they shouldn't be. They are just creating extra work for themselves as they will have to transition at some point.

The v1-beta effort started in May 2016, and it resolves many of the issues with v0. Many of us are already using v1-beta in production with no problems, and resolving the occasional breaking change is less hassle than upgrading from v0.x to v1 would be.

Material-UI will never be a final product, you will never be guaranteed anything whether with v0.x, v1, or any future release. We are keeping v1 in beta so we can release breaking changes without having them slow us down.

The release notes always describe the breaking changes introduced with each release.

Bite the bullet and go for v1-beta.

Questions

For how-to questions and other non-issues, please use StackOverflow instead of Github issues. There is a StackOverflow tag called "material-ui" that you can use to tag your questions.

Examples

Are you looking for an example project to get started? We host some.

Documentation

Check out our documentation website.

Contributing

We'd greatly appreciate any contribution you make. :)

Changelog

Recently Updated? Please read the changelog.

Roadmap

The future plans and high priority features and enhancements can be found in the ROADMAP.md file.

Thanks

Thank you to BrowserStack for providing the infrastructure that allows us to test in real browsers.

License

This project is licensed under the terms of the MIT license.