Image resizing, multi-format generation, and compression tool. It will process gif
, svg
, png
, jpeg|jpg
, webp
image types with the following default configuration...
gif
,svg
,webp
: by default compress and output to the output path specificedpng
,jpeg|jpg
: by defaults creates 7 different sized images, compresses them, and also creates awebp
version of the resized image
It will generate a .json
manifest file for each image that multiple formats are created for which includes the sizes generated as well. This file will output alongside the images in the output folder.
recompress({ input, output [, sizes] [, compressOnly] })
Type: string|string[]
Files to be optimized. See supported globby
patterns.
NOTE: File exclusions can be handled here, see above patterns.
Type: string
Output base path. Folder structure will be preserved when the images are output.
Type: int[]
If any sizes are specified it will override the default set, but will include 30
and 1920
.
Defaults: [30, 1920, 480, 640, 768, 1024, 1366, 1600 ]
Type: string|string[]
Any file paths passed in here will trigger the system to only compress the images and generate a 30px
wide thumbnail. You do not need to exclude the paths from the input param, these paths are merged with the input paths.
Files to be optimized. See supported globby
patterns.
npm install recompress --save
const recompress = require('recompress');
(async () => {
await recompress({
input: ['src/images', '!src/images/exclude'],
output: 'dist/images'
});
console.log('done');
})();
const recompress = require('recompress');
recompress({
input: ['src/images', '!src/images/exclude'],
output: 'dist/images'
})
.then(() => {
console.log('done');
});
Copyright (c) 2018, Arcane & Jamieson Roberts.