StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Frameworks
  4. Front End Frameworks
  5. BEM vs Material-UI

BEM vs Material-UI

OverviewDecisionsComparisonAlternatives

Overview

Material-UI
Material-UI
Stacks2.7K
Followers3.7K
Votes445
BEM
BEM
Stacks118
Followers98
Votes0

BEM vs Material-UI: What are the differences?

  1. Naming Convention: BEM (Block Element Modifier) is a naming convention that focuses on providing meaningful and descriptive class names to HTML elements. Material-UI, on the other hand, follows its own naming convention that is based on the Material Design guidelines. This means that the class names in Material-UI are more specific to the UI components and their functionality.

  2. Component-based Approach: BEM mainly revolves around the concept of reusable blocks that can be combined to form larger components. Material-UI, on the contrary, provides a wide range of pre-built UI components that can be used directly in the application. This makes Material-UI more developer-friendly as it reduces the need for writing custom CSS styles.

  3. Styling: BEM encourages developers to write CSS styles without using any preprocessors or CSS-in-JS solutions. Material-UI, however, promotes the usage of CSS-in-JS approach by providing its own styling solution called "JSS" (JavaScript Style Sheets). This allows developers to create dynamic and themeable styles directly in JavaScript.

  4. Grid System: BEM does not have a built-in grid system, so developers have to write custom CSS or use a separate CSS framework for creating responsive layouts. Material-UI, on the other hand, provides a responsive grid system out of the box, which makes it easier to create responsive designs without any additional CSS.

  5. Component Theming: BEM does not have a built-in theming mechanism. Material-UI, on the other hand, provides a robust theming system that allows developers to customize the appearance of UI components by defining their own color palettes, typography styles, and other theme variables.

  6. Community and Ecosystem: BEM is a widely adopted naming convention in the CSS community and has a large community support. Material-UI, being a UI component library, has its own dedicated community and a rich ecosystem of third-party plugins and tools that enhance the development experience.

In Summary, BEM and Material-UI differ in terms of naming convention, component-based approach, styling, grid system, component theming, and the community and ecosystem around them.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Material-UI, BEM

Abigail
Abigail

Dec 10, 2019

Decided

Fonts and typography are fun. Material Design is a framework (developed by Google) that basically geeks out on how to assemble your typographical elements together into a design language. If you're into fonts and typography, it's fantastic. It provides a theming engine, reusable components, and can pull different user interfaces together under a common design paradigm. I'd highly recommend looking into Borries Schwesinger's book "The Form Book" if you're going to be working with Material UI or are otherwise new to component design.

https://www.amazon.com/Form-Book-Creating-Printed-Online/dp/0500515085

767k views767k
Comments

Detailed Comparison

Material-UI
Material-UI
BEM
BEM

Material UI is a library of React UI components that implements Google's Material Design.

This methodology was developed at Yandex with the goals in mind that Fast development and long-lasting results for standard projects,A project involves many people,Scalable teams,Code reuse.

Tables; Forms; Snackbars; Buttons; Theming
-
Statistics
Stacks
2.7K
Stacks
118
Followers
3.7K
Followers
98
Votes
445
Votes
0
Pros & Cons
Pros
  • 141
    React
  • 82
    Material Design
  • 60
    Ui components
  • 30
    CSS framework
  • 26
    Component
Cons
  • 36
    Hard to learn. Bad documentation
  • 29
    Hard to customize
  • 22
    Hard to understand Docs
  • 9
    Bad performance
  • 7
    For editable table component need to use material-table
No community feedback yet
Integrations
React
React
Emotion
Emotion
Next.js
Next.js
styled-components
styled-components
Node.js
Node.js
No integrations available

What are some alternatives to Material-UI, BEM?

Bootstrap

Bootstrap

Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.

Foundation

Foundation

Foundation is the most advanced responsive front-end framework in the world. You can quickly prototype and build sites or apps that work on any kind of device with Foundation, which includes layout constructs (like a fully responsive grid), elements and best practices.

Semantic UI

Semantic UI

Semantic empowers designers and developers by creating a shared vocabulary for UI.

Materialize

Materialize

A CSS Framework based on material design.

Material Design for Angular

Material Design for Angular

Material Design is a specification for a unified system of visual, motion, and interaction design that adapts across different devices. Our goal is to deliver a lean, lightweight set of AngularJS-native UI elements that implement the material design system for use in Angular SPAs.

Blazor

Blazor

Blazor is a .NET web framework that runs in any browser. You author Blazor apps using C#/Razor and HTML.

Quasar Framework

Quasar Framework

Build responsive Single Page Apps, SSR Apps, PWAs, Hybrid Mobile Apps and Electron Apps, all using the same codebase!, powered with Vue.

Nuxt.js

Nuxt.js

Nuxt.js presets all the configuration needed to make your development of a Vue.js application enjoyable. You can use Nuxt.js for SSR, SPA, Static Generated, PWA and more.

UIkIt

UIkIt

UIkit gives you a comprehensive collection of HTML, CSS, and JS components which is simple to use, easy to customize and extendable.

Tailwind CSS

Tailwind CSS

Tailwind is different from frameworks like Bootstrap, Foundation, or Bulma in that it's not a UI kit. It doesn't have a default theme, and there are no build-in UI components. It comes with a menu of predesigned widgets to build your site with, but doesn't impose design decisions that are difficult to undo.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase