Material design components for react, powered by materializecss.
npm install react-materialize
HTML Setup (from materializecss)
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="http://fonts.googleapis.com/icon?family=Material+Icons">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/css/materialize.min.css">
</head>
<body>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/js/materialize.min.js"></script>
<script src="path/to/your/bundle.js"></script>
</body>
</html>
import { Button, Card, Row, Col } from 'react-materialize';
See documentation for live examples. Try out the boilerplate.
If you are getting errors like $ is not defined
or $(...).modal is not a function
when using with create-react-app, you'll need to downgrade to react15 (as we don't support react16 yet):
yarn add react@15.x react-dom@15.x
Now add jquery
and materialize-css
to public/index.html
via CDN:
<head>
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/css/materialize.min.css" rel="stylesheet">
</head>
<body>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/js/materialize.min.js"></script>
</body>
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.
Yes, please!
We have a help-wanted
label in the issues page for convenience