Image optimization for Grunt using imgo.

npm install grunt-imgo
2 downloads in the last day
19 downloads in the last week
44 downloads in the last month

Image optimization for Grunt using imgo


This plugin requires Grunt 0.4.

Install imgo (see How to install imgo on OS X below for instructions).

npm install grunt-imgo --save-dev

Add to your Gruntfile.js:


Then add section named imgo inside grunt.initConfig(). See next section for details.


src string|array

Images list: PNG, GIF or JPEG. String or array. Wildcards are supported.

dest string

Destination path for images copying before optimizing.

icons: {
    src: 'static/dev/img/*.*',
    dest: 'static/build/img/'

options string

Any options you want to pass to imgo.

icons: {
    src: 'icons/*.png',
    options: '-m -b'

skip boolean

If true task will not be ran. In example, you can skip imgo on Windows (becase of difficult installation):

skip: require('os').platform() === 'win32'

Gruntfile Example

module.exports = function(grunt) {
        imgo: {
            icons: {
                src: 'icons/*.png'
    grunt.registerTask('default', ['imgo']);

How to install imgo on OS X

Install Homebrew.

Run following commands in terminal:

brew install exiftool imagemagick optipng libjpeg gifsicle

formulas='pngout.rb  defluff.rb cryopng.rb imgo.rb'
for package in $formulas
  brew install ""$package

You may need to use sudo for brew, depending on your setup.

Release History

2013-06-18 v0.1.1

  • dest option (by @smolnikov).
  • Fix options: cannot parse several keys.
  • Verbose output of imgo command.

2013-02-18 v0.1.0

  • Grunt 0.4 support.
  • file option renamed to src.


The MIT License, see the included file.

npm loves you