Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Grunt task for JSMin with sourcemap

README.md

grunt-jsmin-sourcemap Build status

Grunt task for JSMin and source maps.

Synopsis

Grunt is a node.js based CLI build tool.

JSMin is a JavaScript minifier that removes whitespace and comments.

Source maps enables developers to view and interact with minified JavaScript as if it were unminified (providing useful line errors and easier debugging).

When you combine all three of these, you get a grunt plugin that is your new best debugging friend.

Demos

The demos in the node-jsmin-sourcemap, what makes this tick, are hosted on Plunker for your testing and enjoyment.

Getting Started

Install this grunt plugin next to your project's grunt.js gruntfile with: npm install grunt-jsmin-sourcemap

Then add this line to your project's grunt.js gruntfile:

grunt.loadNpmTasks('grunt-jsmin-sourcemap');

Documentation

grunt-jsmin-sourcemap is registered under the jsmin-sourcemap task. Your initConfig should look similar to this:

grunt.initConfig({
  'jsmin-sourcemap': {
    all: {
      // Source files to concatenate and minify (also accepts a string and minimatch items)
      src: ['public/js/jquery.js', 'public/js/underscore.js'],

      // Destination for concatenated/minified JavaScript
      dest: 'dist/js/all.min.js',

      // Destination for sourcemap of minified JavaScript
      destMap: 'dist/js/all.js.map'

      // Optional root for all relative URLs
      srcRoot: 'some/lower/directory'

      // Optional cwd to resolve from for all URLs
      // Converts jquery.js -> some/higher/directory/jquery.js during lookup but mapping preserves jquery.js in map file
      cwd: 'some/higher/directory'
    },

    // Compact format is also accepted
    'dest/file.js': ['src/file1.js', 'src/file2.js']
  }
});

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint via grunt and test via npm test.

Donating

Support this project and others by twolfson via gittip.

Support via Gittip

License

As of Dec 05 2013, Todd Wolfson has released this repository and its contents to the public domain.

It has been released under the UNLICENSE.

Previous to this, it was licensed under the MIT license.

Something went wrong with that request. Please try again.