jscc

Javascript compilation and build utility.

npm install jscc
1 downloads in the last week
5 downloads in the last month

jscc

javascript compiler collections.

jscc is a javascript compiler interfaces for the front end developpers.

install.

npm -g install jscc

run.

jscc [build/watch]

usage.

In the first, create build.json

{
  "global" : {
    "debug" : {
      "compiler" : "uglify",
       "uglify" : {
         "mangle" : false,
         "squeeze-more" : false,
         "unsafe" : false,
         "squeeze" : false,
         "beautify" : true
       },
       "closure" : {
          "compilationLevel" : "WHITESPACE_ONLY",
          "sourceMap" : true,
          "debug" : true,
          "prettyPrint" : true,
          "externs" : ["jquery-1.7.externs.js"],
          "jscompWarnings" : ["checkTypes"],
          "jscompOff" : ["missingProperties"],
          "outputWrapper" : "!function () {%output%}();"
       }
    },
    "release" : {
      "compiler" : "closure",
      "uglify" : {
        "mangle" : true,
        "squeeze-more" : true,
        "unsafe" : true,
        "squeeze" : true,
        "beautify" : false
      },
      "closure" : {
        "compilationLevel" : "ADVANCED_OPTIMIZATIONS",
        "sourceMap" : true,
        "debug" : false,
        "prettyPrint" : false,
        "externs" : ["jquery-1.7.externs.js"],
        "jscompWarnings" : ["checkTypes", "accessControls", "visibility"],
        "jscompOff" : ["missingProperties"],
        "outputWrapper" : "!function () {%output%}();",
        "processJqueryPrimitives" : true,
        "useTypesForOptimization" : true
      }
    }
  },
  "./test/js/test1.js" : {
    "release" : {
      "closure" : {
        "debug" : true,
        "prettyPrint" : true
      }
    }
  },
  "./test/js/test2.js" : {},
  "./js/closure_compiler_utils.js" : {}
}

detail.

  • global : A global options which applied to all files, if you are not overwrite each file options.

  • debug : A debug mode option, this option used by debug build.

  • release : A release mode option, this option used by release build.

  • filename : Specify a relative or a absolute path for the compilation target.

options

  • [watch|build] -m/--mode [MODE] : Specify the compilation mode. MODE is one of "release debug"
  • [build] -t/--target [TARGET] : Specify the build target. TARGET is selected by RegularExpressions from the build.json.
npm loves you