This module is a crafty preset to compress images if they’re webp, jpg, png, gif or svg
Installation
npm install @swissquote/crafty-preset-images --save-dev
module.exports = {
presets: [
"@swissquote/crafty-preset-images",
"@swissquote/crafty-runner-gulp"
]
};
WebAssembly
Starting with version 1.14 of Crafty, this preset comes bundled with WebAssembly versions of the various tools used for image reduction. This means that they don’t need to be downloaded from the internet and thus will work in any environment even behind a Corporate Proxy.
Currently we embed the binaries for PNG, JPEG and WEBP. GIF has no binary for the moment (it will just copy the files without compressing them) SVG is handled through a different system
The binaries are taken from https://github.com/GoogleChromeLabs/squoosh/tree/dev/codecs by using the same technique as https://github.com/vercel/next.js/tree/v10.0.8/packages/next/next-server/server/lib/squoosh.