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 Semantic UI

BEM vs Semantic UI

OverviewComparisonAlternatives

Overview

Semantic UI
Semantic UI
Stacks992
Followers1.5K
Votes673
GitHub Stars51.2K
Forks4.9K
BEM
BEM
Stacks118
Followers98
Votes0

BEM vs Semantic UI: What are the differences?

Introduction

Markdown is a lightweight and easy-to-use markup language that can be used to format text for websites. In this task, we will format the provided information about the key differences between BEM and Semantic UI as Markdown code that can be used in a website.

Key differences between BEM and Semantic UI

  1. Naming convention: BEM (Block Element Modifier) follows a strict naming convention, where each class is named using a specific format (block__element--modifier), allowing for clear and structured CSS code. On the other hand, Semantic UI provides a wide range of predefined class names that are semantic and meaningful, making it easier to read and understand the code.

  2. Modularity: BEM promotes a modular approach to design and development, allowing for the creation of reusable components that can be easily combined and modified. Semantic UI, on the other hand, provides a comprehensive set of pre-designed components that can be used out-of-the-box without the need for extensive customization.

  3. Customization: In BEM, customization of styles and components requires writing additional CSS code to modify the existing classes. Semantic UI, on the other hand, provides a theming system that allows for easy customization of the predefined components by changing variables and mixins.

  4. Learning curve: BEM has a steeper learning curve compared to Semantic UI. It requires understanding and following the naming conventions and guidelines, which can be a bit overwhelming for beginners. Semantic UI, on the other hand, provides a more intuitive and straightforward approach to building UI, making it easier for beginners to get started.

  5. Community support: BEM has a strong and active community that provides extensive documentation, tutorials, and resources to help developers understand and implement BEM practices. Semantic UI also has a supportive community, but it is relatively smaller compared to BEM.

  6. Flexibility: BEM offers more flexibility in terms of customization and building complex layouts. It allows for easier combination and nesting of components, providing more control over the design. Semantic UI, on the other hand, provides a more opinionated and structured approach that may limit flexibility in certain cases.

Summary

In summary, the key differences between BEM and Semantic UI lie in their naming convention, modularity, customization options, learning curve, community support, and flexibility.

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

Detailed Comparison

Semantic UI
Semantic UI
BEM
BEM

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

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.

Build Responsive Layouts Easier;Self Explanatory;Tag ambivalent;Powerful tools for expressing groups and collections;Portable and self-contained
-
Statistics
GitHub Stars
51.2K
GitHub Stars
-
GitHub Forks
4.9K
GitHub Forks
-
Stacks
992
Stacks
118
Followers
1.5K
Followers
98
Votes
673
Votes
0
Pros & Cons
Pros
  • 157
    Easy to use and looks elegant
  • 92
    Variety of components
  • 64
    Themes
  • 61
    Has out-of-the-box widgets i would actually use
  • 57
    Semantic, duh
Cons
  • 5
    Outdated build tool (gulp 3))
  • 3
    Poor accessibility support
  • 3
    HTML is not semantic (see list component)
  • 2
    Javascript is tied to jquery
No community feedback yet
Integrations
AngularJS
AngularJS
React
React
Ember.js
Ember.js
Meteor
Meteor
No integrations available

What are some alternatives to Semantic 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.

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.

Material-UI

Material-UI

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

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