{"id":13555862,"url":"https://github.com/enb/enb","last_synced_at":"2025-12-18T07:00:14.075Z","repository":{"id":8458184,"uuid":"10054361","full_name":"enb/enb","owner":"enb","description":"Tool for building web projects, BEM bundler.","archived":false,"fork":false,"pushed_at":"2023-09-18T15:15:28.000Z","size":2517,"stargazers_count":133,"open_issues_count":59,"forks_count":54,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-10-01T20:54:58.761Z","etag":null,"topics":["bem","build","bundler","enb","tool"],"latest_commit_sha":null,"homepage":"https://bem.info/toolbox/enb/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/enb.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2013-05-14T12:15:32.000Z","updated_at":"2025-05-05T04:49:38.000Z","dependencies_parsed_at":"2022-09-14T08:20:34.330Z","dependency_job_id":"79229a4b-0be5-4402-9163-9a52881d20b7","html_url":"https://github.com/enb/enb","commit_stats":{"total_commits":709,"total_committers":57,"mean_commits":12.43859649122807,"dds":0.693935119887165,"last_synced_commit":"87b27d7b9bfab518c159ab5c9f47bba21e291051"},"previous_names":["enb-make/enb"],"tags_count":44,"template":false,"template_full_name":null,"purl":"pkg:github/enb/enb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enb%2Fenb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enb%2Fenb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enb%2Fenb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enb%2Fenb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/enb","download_url":"https://codeload.github.com/enb/enb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enb%2Fenb/sbom","scorecard":{"id":376601,"data":{"date":"2025-08-11","repo":{"name":"github.com/enb/enb","commit":"87b27d7b9bfab518c159ab5c9f47bba21e291051"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Code-Review","score":7,"reason":"Found 7/10 approved changesets -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 27 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T14:23:43.178Z","repository_id":8458184,"created_at":"2025-08-18T14:23:43.178Z","updated_at":"2025-08-18T14:23:43.178Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27792982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-18T02:00:09.725Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bem","build","bundler","enb","tool"],"created_at":"2024-08-01T12:03:27.920Z","updated_at":"2025-12-18T07:00:14.056Z","avatar_url":"https://github.com/enb.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","others","Stale"],"sub_categories":["Build Tools \u0026 Bundlers"],"readme":"# ENB\n\n[![NPM Status][npm-img]][npm]\n[![Travis Status][test-img]][travis]\n[![Windows Status][appveyor-img]][appveyor]\n[![Coverage Status][coveralls-img]][coveralls]\n[![Dependency Status][david-img]][david]\n\n[npm]: http://www.npmjs.org/package/enb\n[npm-img]: https://img.shields.io/npm/v/enb.svg\n[travis]: https://travis-ci.org/enb/enb\n[test-img]: https://img.shields.io/travis/enb/enb/master.svg?label=tests\n[appveyor]: https://ci.appveyor.com/project/blond/enb\n[appveyor-img]: https://img.shields.io/appveyor/ci/blond/enb/master.svg?label=windows\n[coveralls]: https://coveralls.io/r/enb/enb?branch=master\n[coveralls-img]: https://img.shields.io/coveralls/enb/enb/master.svg\n[david]: https://david-dm.org/enb/enb\n[david-img]: https://img.shields.io/david/enb/enb/master.svg\nThe tool for building web projects created with the [BEM methodology](https://en.bem.info/methodology).\n\n## Introduction\n\nThe main purpose of ENB is to combine source files into [bundles](https://github.com/bem-site/bem-method/blob/bem-info-data/method/build/build.en.md#introduction), usually for further use in the browser.\n\nThe build includes combining all source files, processing them and converting the code, as well as preparing and packing the resources (images, fonts, and so on).\n\n\u003e Read more about [building BEM projects](https://en.bem.info/methodology/build/) on the [bem.info](https://en.bem.info/) site.\n\n### Basic features of ENB\n\n* Searches for only those source files needed for the build.\n* Connects the necessary source files based on dependency declarations.\n* Defines the order of connecting the source files.\n* Combines source files spread across the project's file system.\n* Creates bundles and files.\n* Extends the build for project-specific processing and conversion.\n* Provides a local development service that supports builds on demand.\n\n## Installation\n\n```shell\n$ npm install --save-dev enb\n```\n\n## Getting started\n\nTo create a BEM project configured for the build with [ENB](https://en.bem.info/toolbox/enb/), use one of these options:\n\n1. Install a [project-stub](https://en.bem.info/platform/project-stub/) template project that supports [ENB](https://en.bem.info/toolbox/enb/) builds by default.\n1. Create a project that suits your tasks. To do this, answer the questions in the [BEM project generator](https://github.com/bem-archive/generator-bem-stub/) based on [Yeoman](http://yeoman.io/).\n\n## Documentation\n\n* *`[deprecated]`* [Project build guide](./docs/guides/build-project/build-project.en.md)\n* [Building a bundle](https://github.com/enb/enb-bem-techs/blob/master/docs/build-bundle/build-bundle.en.md)\n* [Building a page](https://github.com/enb/enb-bem-techs/blob/master/docs/build-page/build-page.en.md)\n* [Building a merged bundle](https://github.com/enb/enb-bem-techs/blob/master/docs/build-merged-bundle/build-merged-bundle.en.md)\n* [Building a distribution](https://github.com/enb/enb-bem-techs/blob/master/docs/build-dist/build-dist.en.md)\n* *`[deprecated]`* [Building with express](./docs/guides/express/express.en.md)\n* *`[deprecated]`* [Guide to writing an ENB technology](./docs/guides/write-tech/write-tech.en.md)\n* [Terminology](./docs/terms/terms.en.md)\n* *`[deprecated]`* [API](./docs/api/api.en.md)\n* *`[deprecated]`* [CLI](./docs/cli/cli.en.md)\n\n## Materials\n\n* [File structure organization](https://en.bem.info/methodology/filestructure/)\n* [Building a BEM project](https://en.bem.info/methodology/build/)\n* [Redefinition levels](https://en.bem.info/methodology/redefinition-levels/)\n* [Declarations in BEM](https://en.bem.info/methodology/declarations/)\n\n## Extensions\n\n\u003e ENB technology packages are located in [NPM](https://www.npmjs.com): [packages with the `enb` prefix](https://www.npmjs.com/search?q=enb).\n\n| Name | Status | Description |\n| -------- | ------ | -------- |\n| **BEM methodologies** |\n| [BEM](https://github.com/enb/enb-bem-techs) | [![NPM version](https://img.shields.io/npm/v/enb-bem-techs.svg)](https://www.npmjs.org/package/enb-bem-techs) | Technologies for building BEM projects. |\n| [BEViS](https://github.com/enb-make/enb-bevis) | [![NPM version](https://img.shields.io/npm/v/enb-bevis.svg)](https://www.npmjs.org/package/enb-bevis) | Technologies for building BEViS projects. |\n| **Templating** |\n| [bem-xjst](https://github.com/enb/enb-bemxjst) | [![NPM version](https://img.shields.io/npm/v/enb-bemxjst.svg)](https://www.npmjs.org/package/enb-bemxjst) | Building BEMTREE and BEMHTML templates with [bem-xjst](https://github.com/bem/bem-xjst). |\n| [xjst](https://github.com/enb/enb-xjst) | [![NPM version](https://img.shields.io/npm/v/enb-xjst.svg)](https://www.npmjs.org/package/enb-xjst) | Building BEMTREE and BEMHTML templates with [XJST](https://github.com/veged/xjst). |\n| [bh](https://github.com/enb/enb-bh) | [![NPM version](https://img.shields.io/npm/v/enb-bh.svg)](https://www.npmjs.org/package/enb-bh) | Building BH templates. |\n| [bt](https://github.com/enb/enb-bt) | [![NPM version](https://img.shields.io/npm/v/enb-bt.svg)](https://www.npmjs.org/package/enb-bt) | Building BT templates. |\n| **Styles** |\n| [CSS](https://github.com/enb/enb-css) | [![NPM version](https://img.shields.io/npm/v/enb-css.svg)](https://www.npmjs.org/package/enb-css) | Building and minimizing CSS files. |\n| [PostCSS](https://github.com/enb/enb-postcss) | [![NPM version](https://img.shields.io/npm/v/enb-postcss.svg)](https://www.npmjs.org/package/enb-postcss) | Building and processing CSS files with [postcss](https://github.com/postcss/postcss). |\n| [Stylus](https://github.com/enb/enb-stylus) | [![NPM version](https://img.shields.io/npm/v/enb-stylus.svg)](https://www.npmjs.org/package/enb-stylus) | Building and minimizing Stylus files. |\n| [Saas](https://github.com/enb/enb-sass) | [![NPM version](https://img.shields.io/npm/v/enb-sass.svg)](https://www.npmjs.org/package/enb-sass) | Building Sass files. |\n| [Roole](https://github.com/enb/enb-roole) | [![NPM version](https://img.shields.io/npm/v/enb-roole.svg)](https://www.npmjs.org/package/enb-roole) | Building roo files. |\n| **JavaScript** |\n| [JavaScript](https://github.com/enb/enb-js) | [![NPM version] (https://img.shields.io/npm/v/enb-js.svg)](https://www.npmjs.org/package/enb-js) | Building, processing and minimizing JS files. |\n| [YModules](https://github.com/enb/enb-modules) | [![NPM version](https://img.shields.io/npm/v/enb-modules.svg)](https://www.npmjs.org/package/enb-modules) | Building JS files with [YModules](https://github.com/ymaps/modules). |\n| **Public facilities** |\n| [Examples](https://github.com/enb/enb-bem-examples) | [![NPM version](https://img.shields.io/npm/v/enb-bem-examples.svg)](https://www.npmjs.org/package/enb-bem-examples) | Building BEM examples. |\n| [Docs](https://github.com/enb/enb-bem-docs) | [![NPM version](https://img.shields.io/npm/v/enb-bem-docs.svg)](https://www.npmjs.org/package/enb-bem-docs) | Building BEM documentation. |\n| [Browser tests](https://github.com/enb/enb-bem-specs) | [![NPM version](https://img.shields.io/npm/v/enb-bem-specs.svg)](https://www.npmjs.org/package/enb-bem-specs) | Building and running tests for client-side JavaScript. |\n| [Node tests](https://github.com/enb/enb-bem-node-specs) | [![NPM version](https://img.shields.io/npm/v/enb-bem-node-specs.svg)](https://www.npmjs.org/package/enb-bem-node-specs) | Building and running tests for BEM templates. |\n| [Template tests](https://github.com/enb/enb-bem-tmpl-specs) | [![NPM version](https://img.shields.io/npm/v/enb-bem-tmpl-specs.svg)](https://www.npmjs.org/package/enb-bem-tmpl-specs) | Building and running tests for BEM templates. |\n\n## License\n\n© 2013 YANDEX LLC. The code is released under the [Mozilla Public License 2.0](LICENSE.txt).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenb%2Fenb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fenb%2Fenb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenb%2Fenb/lists"}