One data grid for JavaScript, React, Vue & Angular. Sorting, filtering, virtualization, pinning, and CSV export included. Early access $199 $349 → [Get it now]

How to use Material UI in React

Building React applications with Material Design principles requires a comprehensive component library that implements Google’s design system. As the creator of CoreUI, I’ve worked with various UI frameworks in production applications. Material UI (MUI) is the most popular React implementation of Material Design, offering 50+ customizable components with excellent TypeScript support. The installation is straightforward and provides immediate access to buttons, forms, navigation, and layout components.

Install Material UI using npm and import components directly into your React application.

npm install @mui/material @emotion/react @emotion/styled
import { Button, Card, CardContent, Typography } from '@mui/material'

const Dashboard = () => {
  return (
    <Card>
      <CardContent>
        <Typography variant='h5' component='div'>
          Dashboard
        </Typography>
        <Typography variant='body2' color='text.secondary'>
          Welcome to your dashboard
        </Typography>
        <Button variant='contained' color='primary'>
          Get Started
        </Button>
      </CardContent>
    </Card>
  )
}

export default Dashboard

Best Practice Note

Material UI uses Emotion for styling by default. The library includes a comprehensive theming system accessible via createTheme and ThemeProvider for customizing colors, typography, and spacing across your application. All components follow accessibility best practices with proper ARIA attributes. For enterprise applications requiring Bootstrap-based designs rather than Material Design, consider CoreUI for React which offers similar component breadth with more traditional styling and is available at CoreUI React.


Speed up your responsive apps and websites with fully-featured, ready-to-use open-source admin panel templates—free to use and built for efficiency.


About the Author

Subscribe to our newsletter
Get early information about new products, product updates and blog posts.
How to Hide Scrollbar with CSS
How to Hide Scrollbar with CSS

How to Use JavaScript setTimeout()
How to Use JavaScript setTimeout()

Javascript Random - How to Generate a Random Number in JavaScript?
Javascript Random - How to Generate a Random Number in JavaScript?

How to capitalize the first letter in JavaScript?
How to capitalize the first letter in JavaScript?

Answers by CoreUI Core Team