Git Product home page Git Product logo

rmwc's Introduction

CircleCI codecov npm npm npm Chat Backers on Open Collective Sponsors on Open Collective

RMWC - React Material Web Components

RMWC is a React UI Kit built on Google's official Material Components Web library v2.x.x https://rmwc.io/

Features:

  • Uses Google's official material-components-web library
  • Includes Addon components for ones missing from the official spec
  • Works in React 16.3.x and up
  • First class Typescript Support
  • Server side rendering support
  • Individually packaged and released components

Try it in the Code Sandbox

Recent updates

V5.5.0 is live with some great new features!

  • Added the concept of "danger" buttons for those destructive actions
  • SnackbarQueue is a new way to easily create notifications from anywhere in your app
  • DialogQueue emulates the browsers built in alert, confirm, and prompt apis and gives you an easy way to create dialogs from anywhere in your app
  • Full docs search has been added so make navigating a bit easier
  • The docs have a new domain, rmwc.io
  • Upgraded to material-components-web 2.x.x which includes a host of fixes and cleanup

V5 is officially out! RMWC has been completely rewritten in Typescript while also knocking out about a years worth of tech debt and improving things across the board. You can expect better typing, better performance, better integration with material-components-web, and just better everything. All of this was done with as few breaking changes as possible, so upgrading should be relatively painless.

Your quick migration guide:

  • React 16.3 is the new min version to take advantage of React Fragments, Ref Forwarding, and the new Context Api. If you need React 15 support, you'll have to stay on 4.x.x and below.
  • The library has been rewritten in Typescript instead of Flow. At this time, Flow types are no longer supported. Please comment on issue #407 If you're interested in bringing these back
  • Changelog couldn't be generated for this release, see the release notes for the full details ๐Ÿš€ https://opencollective.com/rmwc/updates/5-0-0-a-giant-leap-for-rmwc

View all release notes ๐Ÿ‘‰ https://opencollective.com/rmwc/updates

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 from material-components-web
  • To be as unobtrusive and sensible as possible.
  • To fill the gaps in material-components-web with custom React community driven components.

Installation

  • npm i rmwc --save or yarn add rmwc

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

RMWC avoids them at all costs! 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

Contributions

This project exists thanks to all the people who contribute. [Contribute].

Backers

Thank you to all our backers! ๐Ÿ™ [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

rmwc's People

Contributors

jamesmfriedman avatar schliflo avatar gideonflynn avatar eranshmil avatar jetfault avatar lo-tp avatar arpontes avatar shawnatxapp avatar ufomelkor avatar panmona avatar jonvuri avatar alexeyraspopov avatar aarongarciah avatar yarnaimo avatar afixoftrix avatar gitter-badger avatar cyberhuman avatar patrickrgaffney avatar majames avatar puopg avatar mattmichler avatar martinratinaud avatar jesnil01 avatar dave-hillier avatar danielmahon avatar dandv avatar cmfcmf avatar amaesato avatar anirban09 avatar goodrone avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.