by 1000ch

1000ch / gulp-image

Optimize PNG, JPEG, GIF, SVG images with gulp task.

213 Stars 21 Forks Last release: 3 months ago (v6.2.1) MIT License 277 Commits 37 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

gulp-image Build Status

Optimize PNG, JPEG, GIF, SVG images with gulp task.

gulp-image result


$ npm install --save-dev gulp-image

External Dendencies

  • brew install libjpeg libpng
    on macOS
  • apt-get install -y libjpeg libpng
    on Ubuntu
  • npm install -g windows-build-tools
    on Windows


This is an example of

const gulp = require('gulp');
const image = require('gulp-image');

gulp.task('image', function () { gulp.src('./fixtures/*') .pipe(image()) .pipe(gulp.dest('./dest')); });

gulp.task('default', ['image']);

You can pass an object to

as argument such as following:
gulp.task('image', () => {
      pngquant: true,
      optipng: false,
      zopflipng: true,
      jpegRecompress: false,
      mozjpeg: true,
      gifsicle: true,
      svgo: true,
      concurrent: 10,
      quiet: true // defaults to false


for optimizers which you don't want to apply. And you can set
option to limit the max concurrency in execution. You can also set
to avoid logging out results for every image processed.

You can configure parameters applied to each optimizers such as following:

gulp.task('image', () => {
      optipng: ['-i 1', '-strip all', '-fix', '-o7', '-force'],
      pngquant: ['--speed=1', '--force', 256],
      zopflipng: ['-y', '--lossy_8bit', '--lossy_transparent'],
      jpegRecompress: ['--strip', '--quality', 'medium', '--min', 40, '--max', 80],
      mozjpeg: ['-optimize', '-progressive'],
      gifsicle: ['--optimize'],
      svgo: ['--enable', 'cleanupIDs', '--disable', 'convertColors']


MIT © Shogo Sensui

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.