node package manager
Easy sharing. Manage teams and permissions with one click. Create a free org »



A based builder for making modular JS components.

Codeship Status for intermine/apps-b-builder

Quick Start

Globally install the npm package:

$ sudo npm install apps-b-builder -g

Then specify the input and output path to build a component:

# relative to current working directory
$ apps-b ./src/ ./build/

Create a component

A component consists of one component.json config file and one or more source file. Script source files use the CommonJS Modules/1.1 implementation so you use require and module.exports to link between modules & components. This is a standard in the Node.js community.

Component config file

To write a component config file in JSON refer to the standard.

    "name": "app",
    // Which file do we require as the main file. 
    "main": "app.js",
    "version": "1.0.0",
    // Other components. 
    "dependencies": {
        "visionmedia/superagent": "*",
        "necolas/normalize.css": "*",
        "component/marked": "*"
    "scripts": [
    "styles": [

Supported types

Have a look into the test/fixtures directory for examples of supported filetypes:

  1. CoffeeScript; compile-to-JS language, goes into the scripts section
  2. CSS, goes into the styles section
  3. Eco; a templating language, goes into the scripts section
  4. JavaScript, goes into the scripts section
  5. Literate CoffeeScript; mix Markdown and CS syntax, goes into the scripts section
  6. Stylus; a CSS preprocessor including nib CSS3 extensions, goes into the styles section

JavaScript API

You can programatically build files too:

build = require './'
build [ './src/''./build/' ](err) ->
    throw err if err

Test it

Tests using Mocha:

$ npm install -d
$ make test