You can optimize images using one of the following Gulp modules:
- gulp-tinypng
- gulp-image
- gulp-imagemin
TinyPNG’s Open API
Use TinyPNG’s open API with Gulp.
- You need to register with TinyPNG API first to get your key.
- Create a separate Gulp task for image compression.
- Run task:
> gulp tinypng
Module Name | Module Keyword | Role |
---|---|---|
Basic Gulp Script | ‘gulp’ | Basic definitions. |
Concat Module | ‘gulp-tinypng’ | TinyPNG Compression. |
gulp.js
var gulp = require('gulp');
var tingpng = require('gulp-tinypng');
gulp.task('tinypng', function () {
gulp.src('./src/images/*')
.pipe(tingpng('2zx4kaT2LbShfgxlj_h8Xj_y4bZKJ7NN'))
.pipe(gulp.dest('./dist/images'));
});
gulp.task('default', ['tinypng']);
Gulp Image
- Free. No registration required. But more specification is needed to run the script with no errors.
- Create a separate Gulp task for image compression.
- Run task:
> gulp image
Module Name | Module Keyword | Role |
---|---|---|
Basic Gulp Script | ‘gulp’ | Basic definitions. |
Concat Module | ‘gulp-image’ | Gulp Image Compression. |
gulp.js
const gulp = require('gulp');
const image = require('gulp-image');
gulp.task('image', function () {
gulp.src('./src/images/*')
.pipe(image({
pngquant: true,
optipng: false,
zopflipng: true,
jpegRecompress: true,
jpegoptim: false,
mozjpeg: false,
gifsicle: true,
svgo: true
}))
.pipe(gulp.dest('./dist/images'));
});
gulp.task('default', ['image']);
Gulp ImageMin
Free. No registration required. But more specification is needed to run the script with no errors.
- Create a separate Gulp task for image compression.
- Run task:
> gulp imagemin
Module Name | Module Keyword | Role |
---|---|---|
Basic Gulp Script | ‘gulp’ | Basic definitions. |
Concat Module | ‘gulp-imagemin’ | Gulp ImageMin Compression. |
gulp.js
const gulp = require('gulp');
const imagemin = require('gulp-imagemin');
gulp.task('imagemin', () =>
gulp.src('./src/images/*')
.pipe(imagemin())
.pipe(gulp.dest('./dist/images'))
);
gulp.task('default', ['imagemin']);