# ENB

[ENB](https://github.com/enb-make) — a tool for building web projects.

To build projects based on [BEM methodology](https://en.bem.info/method/), ENB uses special modules with a knowledge about an each technology.

Modules can be enabled via packages that are described below.

## Packages

* [enb-bem-techs](https://github.com/enb-bem/enb-bem-techs) — the core technologies to build BEM-based projects.

### JavaScript

* [enb-js](https://github.com/enb/enb-js) — for building JavaScript files.
* [enb-modules](https://github.com/enb-make/enb-modules) — for [ym](https://en.bem.info/tools/bem/modules/) support.

### CSS processing

* [enb-css](https://github.com/enb-make/enb-css) — for building `css` files.
* [enb-stylus](https://github.com/enb-make/enb-stylus) — for building `stylus` files.
* [enb-autoprefixer](https://github.com/enb-make/enb-autoprefixer) — for an `autoprefixer` support.

### Template engines

* [enb-bh](https://github.com/enb-bem/enb-bh) — for building BH templates.
* [enb-xjst](https://github.com/enb-bem/enb-xjst) — for building BEMHTML and BEMTREE based on XJST.
* [enb-bemxjst](https://github.com/enb-bem/enb-bemxjst) — for building BEMHTML and BEMTREE based on `bem-xjst`.

### Infrastructure

* [enb-bem-examples](https://github.com/enb-bem/enb-bem-examples) — for building BEM-based examples.
* [enb-bem-docs](https://github.com/enb-bem/enb-bem-docs) — for building BEM documentation.
* [enb-bem-specs](https://github.com/enb-bem/enb-bem-specs) — for building and running client-side JavaScript tests.
* [enb-bem-tmpl-specs](https://github.com/enb-bem/enb-bem-tmpl-specs) — for building and running BEM templates.
* [enb-magic-platform](https://github.com/enb-bem/enb-magic-platform) — a platform and development server to build BEM-based projects.

### More

* [enb-borschik](https://github.com/enb-make/enb-borschik) — for [borschik](https://en.bem.info/tools/optimizers/borschik/) support.
* [enb-bem-i18n](https://github.com/enb-bem/enb-bem-i18n) — for `BEM.I18N` support.

## How to get started?

Use the [project-stub installation guide](https://en.bem.info/tutorials/project-stub/) to create a BEM project that is configured for using ENB as a build tool.

To create a customized project, follow the instructions of [BEM projects generator](https://en.bem.info/tools/bem/bem-stub/) based on [Yeoman](http://yeoman.io/).

## License

© 2014 YANDEX LLC. Code licensed by [Mozilla Public License 2.0](https://github.com/enb-bem/enb-bem-techs/blob/master/LICENSE.txt).

