BEM has been proposed multiple times in the codebase. For now we appear to be using a modified version of BEM using '-' and it's not clear why and what the benefits are.
Goals
- Decide whether we plan to ever adopt BEM and if so what our strategy for getting there is
- Agree on how to name classes in Vector currently and document in the codebase
- Review existing names
- Ensure the storybook reflects the agreed names of components that are used by designers and engineers.
(See T253671#7261552 for details)
If applicable
Are we following a BEM(-like) terminology in components? Example: Current 'EmphasizedSidebarAction.less' might be better expressed as 'ActionSidebarEmphasized' or 'LinkSidebarEmphasized'?
We are also using different names when describing things. Why?
https://gerrit.wikimedia.org/r/#/c/mediawiki/skins/Vector/+/598811 may render this conversation unnecessary.
Outcome
- This should be documented on https://www.mediawiki.org/wiki/Reading/Web/Coding_conventions
(feel free to update that page if anything seems outdated)