this post was submitted on 20 Aug 2023
11 points (100.0% liked)

Programming

423 readers
4 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS
 

Some frontend developers know the BEM methodology as a naming convention for CSS and they create a disgusting #webcomponents. I've explain the essence of BEM and shown the benefits for your frontend projects.

Feel free to share it with a people who tells you "i use CSS-modules, so i no needs a BEM"

top 4 comments
sorted by: hot top controversial new old
[–] MummifiedClient5000@feddit.dk 3 points 1 year ago

Interesting choice of thumbnail; Mads Mikkelsen and Kim Bodnia from the movie Pusher (1996).

[–] sarjalim@lemm.ee 1 points 1 year ago* (last edited 1 year ago) (3 children)

I'm honestly not necessarily a BEM fan as class names become literally huge if you don't rely a bit on nested elements (targeting nested classes is not very BEMmy - but SASS makes it so convenient). But haven't found a naming convention or "framework" that does the job better. BEM also doesn't address how you should organize the style library for maintainability. I just use my own simplified structure based on ITCSS now.

I just wish that someone could make a methodology or an architecture of building style libraries that felt obvious and was more plug-and-play, I hate that I feel like have to revisit the style library organization and naming convention for each new project to reevaluate if it makes sense for the scope of the project.

Then again, I work as a fullstack dev in a small team of more backend-focused fullstack devs, so I don't do frontend as often as I'd like and don't really have anyone to discuss these issues with.

[–] Paradox@lemdro.id 1 points 1 year ago

Nesting is now in native CSS, so it's even easier

My approach for variants is to use attribute selectors. You don't get massive class names and it becomes more obvious what things are doing. Discover ability gets hurt a bit, but that was never BEMs strength either

https://pdx.su/blog/2023-07-27-use-css-attributes

load more comments (2 replies)