Can I mix Polymer and BEM (techs, tools, everything behind the methodology)? Does it worth it?
Ok, I've made a feature comparison table.
I need it to figure out if one technology can supplement another, not to downplay one of them.
| Feature | BEM | Polymer |
|---|---|---|
| Syntax conventions (for B, E, M) | yes | no, use BEM |
| Decomposition into components | ENB assembler (*) | HTML Imports / webcomponents.js |
| # of requests reduction | ENB assembler (*) | vulcanize |
| CSS encapsulation | upper boundary (*) | upper boundary, lower for Native Shadow DOM (unstable) |
| Component redefinition | yes, orginized in levels, ENB? (*) | limited: extend native tags, inherit javascript definitions (behaviors), more is planned |
| File structure organization | yes, B,E,M, techs | no, use BEM |
| Techs support (templates, transpilers) | yes | server-side preprocessing (e.g. w/ gulp), client-side may be hindered |
(*) = I guess so
@ilyaigpetrov It is possible theoretically but won't work out of the box. But your guessing about BEM is right — actually everything provided by Polymer is also available with BEM platform so there's not so much sense in such concatenation.