More about it
The actual code is inspired by multiple concepts and based from experience of real projects. The main goal is to offer a clear naming and optimized structure convention to facilitate working in a team of several developers.
BEM
The naming convention respects main concepts from the BEM (Block-Element-Modifier) methodology.
It uses some generics conventions like __
--
separtors to identify elements
and modifiers.
ITCSS
ITCSS is another convention from CSS Wizardry to help organize CSS files and code applying a architecure that determine the specificity of each "object". The framework is actually thought with this methodology, but it also takes some liberties to optimize it and adapt it to other constraints.
More details about the architecture used is explained on the exitCSS page.
SEM & BIO
CSS-Tricks is at the origin of this acronym which resume well what is used in
Glsass.
The
original post can be found here.
This CSS strategy stands for:
Scalable
Extensible
Maintainable
&
BEM
ITCSS
OOCSS
Harry Roberts, Chris Pearce and others
Other awesome concepts are applied in the framework, based on works of Harry Roberts (CSS Wizardry, ITCSS) or Chris Pearce (CSS Guidelines). As non-exhaustive examples :
- Namespace naming (class, SASS variables, etc.)
- States hooks
- Size factors (flush, tiny, small, medium, large, huge)
And other concepts are inspired by famous frameworks, like Bootstrap (specially the utilities generator), Spectre.css, Tachyons or Tailwind.