oste / rmwc

A React wrapper for Material Design (Web) Components

Home Page:https://jamesmfriedman.github.io/rmwc/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CircleCI codecov npm npm Join the chat at https://gitter.im/react-material-web-components/Lobby

RMWC - React Material Web Components

A React (15 / 16) wrapper for the official Material Design (Web) Components v0.37.0 https://jamesmfriedman.github.io/rmwc/

Features:

  • Uses Google's official material-components-web library
  • Tested in all versions of React ranging from 15.5.x to 16.4.x
  • First class Flow Type Support, no extra configuration needed
  • First class Typescript support (Beta)
  • Server side rendering support

Recent updates

MDC 37 adds extended Fabs and IconButtons. The major breaking change to look out for is CardActions now use IconButtons. The docs now feature a ThemePicker as well to help show customization of the framework.

View the changelog for detailed updates: https://github.com/jamesmfriedman/rmwc/blob/master/CHANGELOG.md

Goals

  • To create the thinnest, lightest, and spec compliant wrapper around Google Material Design Components for the Web https://material.io/components/web/
  • To utilize the Foundation javascript classes and expose their api for consumption
  • To be as unobtrusive and sensible as possible.

Installation

Required steps

  • npm i rmwc --save or yarn add rmwc
  • material-components-web should be installed automatically as a peer dependency. Include node_modules/material-components-web/dist/material-components-web.min.css in your project via your method of choice (using a link tag, a css-loader, etc.).

Optional steps

  • If you would like to use the default Roboto font:
    • add <link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500" rel="stylesheet" />
    • add the class mdc-typography to the body <body className="mdc-typography">...</body>
  • If you would like to use the material-icons font:
    • add <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
  • Add global settings by using the optional <RMWCProvider /> component at the root of your project. See the 'Provider' section for more info.

Additional information is available in the Installation Guide

Usage

Read the docs on how to Usage

Why?

Read the docs on Methodology

About Breaking Changes

Read the docs on Methodology

To run the tests

  • On MacOS Sierra and higher, install watchman to fix a filesystem issue with Jest. brew install watchman
  • npm test

To run the docs / contribute

  • git clone https://github.com/jamesmfriedman/rmwc.git
  • cd rmwc
  • npm install
  • npm start

About

A React wrapper for Material Design (Web) Components

https://jamesmfriedman.github.io/rmwc/

License:MIT License


Languages

Language:JavaScript 96.0%Language:CSS 2.8%Language:HTML 1.3%