Home

Awesome

grunt-yui-compressor Dependency status

A grunt plugin for compressing JavaScript and CSS files using YUI Compressor.

Getting Started

Install the module:

npm install grunt-yui-compressor

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

grunt.loadNpmTasks('grunt-yui-compressor');

Now you can specify CSS/JS files to minify. Here’s a basic example:

'min': {
    'dist': {
        'src': ['src/foo.js', 'src/bar.js'],
        'dest': 'build/foobar.min.js'
    }
},
'cssmin': {
    'dist': {
        'src': ['css/foo.css', 'css/bar.css'],
        'dest': 'build/foobar.min.css'
    }
}

Both min and cssmin use the same API as the built-in min task.

Documentation

This plugin does two things:

Both these tasks are multi tasks, meaning that each of them will implicitly iterate over all of its targets if no target is specified.

FAQ

Why not just use grunt’s built-in min task to minify JavaScript?

Grunt’s built-in min task relies on UglifyJS. I love UglifyJS, but it has a few annoying issues and shortcomings:

YUI Compressor doesn’t have these issues.

Release History

Contributing

Feel free to fork if you see possible improvements!

In lieu of a formal style guide, take care to maintain the existing coding style. Please lint your code (by simply running grunt) before submitting a patch.

Author

twitter/mathias
Mathias Bynens

License

This project is dual licensed under the MIT and GPL licenses.