https://github.com/tarmolov/bem-aib
Enable The Absolutely Independent Blocks paradigm for i-bem
https://github.com/tarmolov/bem-aib
Last synced: 4 months ago
JSON representation
Enable The Absolutely Independent Blocks paradigm for i-bem
- Host: GitHub
- URL: https://github.com/tarmolov/bem-aib
- Owner: tarmolov
- Created: 2013-10-12T12:49:22.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2013-10-25T20:31:21.000Z (over 11 years ago)
- Last Synced: 2024-12-28T01:52:28.277Z (6 months ago)
- Language: JavaScript
- Size: 105 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# bem-aib
This is a simple override level for your BEM project which forbids some methods breaking The Absolutely Independent Blocks paradigm (AIB).
AIB was firstly presented by [Vitaly Harisov](https://twitter.com/harisov) at ClientSide'2007. You can get more details in [Vitaly's post](http://vitaly.harisov.name/article/independent-blocks.html) in his blog (only Russian version is available).
The idea is to make blocks independent from other elements on the page. So blocks have knowledge only about their inner elements (and possibly blocks) and know nothing about their parent. It is a nice idea and I love it so much.
In fact, BEM methodology has been evolved from AIB. However, ```i-bem``` has two methods such as ```findBlockOutside``` and ```findBlocksOutside``` which ruin lovely AIB paradigm. Fortunately, we are strong enough to forbid these method by our own. Just use this override level ;)
## Installation
Include this level after [bem-core](https://github.com/bem/bem-core) levels and it works fine. Nobody from your team can use bad methods.