build.json

An automation tool for building modules with browserify

npm install build.json
5 downloads in the last month

THIS IS STILL ALPHA

Sorry, this was thrown together as fast as possible. I'll update it to use browserify object and not command line, and better exclusion of other libraries.

manifest.json

An automation tool for building modules with browserify

Getting Started

This plugin requires Grunt ~0.4.1

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install manifest.json --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('manifest.json');

The "manifest_json" task

Overview

Mission Statement: To create a reliable, fast build process with low overhead and maintenance.

Basics

Basic Build

Note, please use relative pathing within the Manifest.JSON file and within grunt.

grunt.initConfig({
    manifest_json: {
        build1: {
            options: {
                dist: './dist',
                files: './package/manifest.json'
            }
        }
    },
})

Example Manifest

{
    "requires": [
        "core.js:core",
        "../components/jquery/jquery.min.js:jquery",
        "lodash",
        "q"
    ],
    "ignores": [],
    "excludes": [],
    "entry": "core.js",
    "bundle": "js-core.js"
}

Options

Build Options

  • dist The none-required distribution folder to put the bundle. Will work in conjuction with cwd
  • cwd The current working directory all of these files should be considered relative from. This does not apply to the Manifest.JSON files
  • all Will compile every manifestFile from the Gruntfile root.
  • manifestFile The name of the manifest file. Default: manifest.json

Manifest Options

  • requires An array of files to be exposed for other bundles (aka externalize). A : can be used to give the require an easier name. ./lib/awesome_lib/awesome.js:awesome
  • externals Will be treated as externals and not included within the source bundle.
  • externalFolders Will find every js file and external it.
  • bundle The name of the bundle to compile to
  • entry The file(s) (String or Array) of entry points.
npm loves you