gulp-imagemin
    Overview
    Alternatives
    Playground
    Insights & Analysis
    Issues
    Versions
    Documentation
    Find an Expert
    Dependencies
    Career Opportunities
    Code

gulp-imagemin

Minify PNG, JPEG, GIF and SVG images

6.1.0  •  Published 7 days ago  •  by Sindre Sorhus  •  MIT License

Minify PNG, JPEG, GIF and SVG images with imagemin

Issues with the output should be reported on the imagemin issue tracker.

Install

$ npm install --save-dev gulp-imagemin

Usage

Basic

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

exports.default = () => (
	gulp.src('src/images/*')
		.pipe(imagemin())
		.pipe(gulp.dest('dist/images'))
);

Custom plugin options

// …
.pipe(imagemin([
	imagemin.gifsicle({interlaced: true}),
	imagemin.jpegtran({progressive: true}),
	imagemin.optipng({optimizationLevel: 5}),
	imagemin.svgo({
		plugins: [
			{removeViewBox: true},
			{cleanupIDs: false}
		]
	})
]))
// …

Note that you may come across an older, implicit syntax. In versions < 3, the same was written like this:

// …
.pipe(imagemin({
	interlaced: true,
	progressive: true,
	optimizationLevel: 5,
	svgoPlugins: [
		{
			removeViewBox: true
		}
	]
}))
// …

Custom plugin options and custom gulp-imagemin options

// …
.pipe(imagemin([
	imagemin.svgo({
		plugins: [
			{
				removeViewBox: true
			}
		]
	})
], {
	verbose: true
}))
// …

API

Comes bundled with the following lossless optimizers:

These are bundled for convenience and most users will not need anything else.

imagemin(plugins?, options?)

Unsupported files are ignored.

plugins

Type: Array
Default: [imagemin.gifsicle(), imagemin.jpegtran(), imagemin.optipng(), imagemin.svgo()]

Plugins to use. This will overwrite the default plugins. Note that the default plugins comes with good defaults and should be sufficient in most cases. See the individual plugins for supported options.

options

Type: object

verbose

Type: boolean
Default: false

Enabling this will log info on every image passed to gulp-imagemin:

gulp-imagemin: ✔ image1.png (already optimized)
gulp-imagemin: ✔ image2.png (saved 91 B - 0.4%)

Dependencies

chalk  ·  fancy-log  ·  imagemin  ·  plugin-error  ·  plur  ·  pretty-bytes  ·  through2-concurrent  ·  imagemin-gifsicle  ·  imagemin-jpegtran  ·  imagemin-optipng  ·  imagemin-svgo  ·  ava  ·  get-stream  ·  imagemin-pngquant  ·  vinyl  ·  xo  ·  gulp

Tags

gulpplugin
imagemin
image
img
picture
photo
minify
minifier
compress
png
jpg
jpeg
gif
svg
Get a weekly digest of your favorite packages
We track new versions of your favorite packages, read the changelogs, and summarize them - so you dont have to
Just $5/month per user

Popularity

Weekly Downloads
106.1K
Stars
1.7K

Issues and PRs

Activity

Last ver 7 days ago
Created 6 years ago
Last commit 3 months ago
13 days between commits

Sustainability

23 contributors

Technology

Node version: 10.16.0
8.2K unpacked

Legal and Compliance

MIT License
OSI Approved
0 vulnerabilities

Top Experts

Sindre Sorhus
Maintainer, 104 commits, 24 merges
Kevin Martensson
Maintainer, 23 commits, 1 merges, 5 PRs
Works at imagemin yeoman
XhmikosR
Maintainer, 3 commits, 4 PRs
Stephan Schneider
2 commits, 2 PRs
Works at contentful
Shinnosuke Watanabe
Maintainer, 1 commits, 1 PRs
Blaine Bublitz
1 commits, 1 PRs
Works at Paying the maintainers Tidelift