Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
material-ui
Advanced tools
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.
Material-UI is a set of React components that implement Google's Material Design specification.
Check out our documentation site for live examples. It's still a work in progress, but hopefully you can see where we're headed.
Recently Updated? Please read the changelog, this README and the documentation before posting an issue.
We recommend that you get to know React before diving into material-ui. Material-UI is a set of React components, so understanding how React fits into web development is important.
(If you're not familiar with Node, or with the concept of Single Page Applications (SPAs), head over to the documentation website for a quick introduction before you read on.)
Material-UI is available as an npm package.
Stable channel
npm install material-ui
Pre-release channel
npm install material-ui@next
Please note that @next
will only point to pre-releases; to get the latest stable release use @latest
instead.
Material-UI was designed with the Roboto font in mind. So be sure to follow those instructions.
For using with React and React DOM from a CDN or as separate minified scripts, you can build files with UMD module support as follows:
npm install
npm run build:min
This will build one material-ui.min.js
file into the /dist
folder.
Beginning with v0.15.0, Material-UI components require a theme to be provided. The quickest way to get up and running is by using the MuiThemeProvider
to inject the theme into your application context. Following that, you can to use any of the components as demonstrated in the documentation.
Here is a quick example to get you started:
./App.js
import React from 'react';
import ReactDOM from 'react-dom';
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';
import MyAwesomeReactComponent from './MyAwesomeReactComponent';
const App = () => (
<MuiThemeProvider>
<MyAwesomeReactComponent />
</MuiThemeProvider>
);
ReactDOM.render(
<App />,
document.getElementById('app')
);
./MyAwesomeReactComponent.js
import React from 'react';
import Button from 'material-ui/Button';
const MyAwesomeReactComponent = () => (
<Button>Default</Button>
);
export default MyAwesomeReactComponent;
Please refer to each component's documentation page to see how they should be imported.
We have implemented a default theme to render all Material-UI components. Styling components to your liking is simple and hassle-free. This can be achieved in the following two ways:
There are 2 projects that you can look at to get started. They can be found in the examples folder. These projects are basic examples that show how to consume material-ui components in your own project. The first project uses browserify for module bundling and gulp for JS task automation, while the second project uses webpack for module bundling and building.
The source code for this documentation site is also included in the repository. This is a slightly more complex project that also uses webpack, and contains examples of every material-ui component. Check out the docs folder for build instructions.
The future plans and high priority features and enhancements can be found in the ROADMAP.md file.
Material-UI came about from our love of React and Google's Material Design. We're currently using it on a project at Call-Em-All and plan on adding to it and making it better. If you'd like to help, check out the docs folder. We'd greatly appreciate any contribution you make. :)
Thank you to BrowserStack for providing the infrastructure that allows us to test material-ui
in real browsers.
This project is licensed under the terms of the MIT license
FAQs
React Components that Implement Google's Material Design.
We found that material-ui demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.