react-materialize / react-materialize

Material design for react, powered by materializecss
https://react-materialize.github.io/
MIT License
1.38k stars 304 forks source link
materialdesign react
React Materialize

Join the chat at https://gitter.im/react-materialize/react-materialize npm version code style: prettier

react-materialize

Material design components for react, powered by materializecss.

Install

npm install materialize-css@next
npm install react-materialize

Use

HTML Setup (from materializecss)

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
    <link rel="stylesheet" href="https://github.com/react-materialize/react-materialize/blob/master/path/to/materialize.css">
  </head>
  <body>
    <script src="https://github.com/react-materialize/react-materialize/raw/master/path/to/your/bundle.js"></script>
  </body>
</html>

Javascript

import 'materialize-css';
import { Button, Card, Row, Col } from 'react-materialize';
Note

materialize-css exposes css via style field in package.json, if you have another tool for CSS that identifies this field you can remove the import from index.html.

Docs && Examples

See documentation for live examples. Try out the boilerplate.

How does it compare to X.Y.Z?

The main goal of this project is to provide react component for materializecss, at the current stage, I am trying to implement all possible widgets that are supported by materializecss. Please create an issue on github if you find you desired component is not available.

There are other material design components for react.js, e.g. material-ui, which is more mature and popular than this one. The main advantage of this project over e.g. material-ui is that it provides a grid system similar to react-bootstrap. Another advantage over material-ui is that react-materialize does not include css in the js - which can be cumbersome to some project's architecture.

Contributions

Yes, please!

We have a help-wanted label in the issues page for convenience

Deployment workflow

We are now using github actions. For every push, test action will run.

To publish a new version update the package version, update the change log and create a PR. Once merged to master push tags git push --tags and create a new release.

Support

This library is only a react wrapper around the awesome materializecss, if you or your company uses this library please support them, all this work requires time :) ✌️