Compress your files with zopfli without installing anything.
npm install grunt-zopfli-native --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-zopfli-native');
Task targets, files and options may be specified according to the grunt Configuring tasks guide.
Choose an output format, you can choose between gzip
, zlib
or deflate
. Defaults to gzip.
zopfli({ mode: 'zlib' })
Forces an extension to your files. Defaults depends on the mode chosen.
zopfli({ extension: '.gzip' })
Providing an empty string will disable adding an extension (eg. preventing '.gz' being added when gzip mode is used).
Limit on the number of files compressed in parallel. Defaults to the number of CPUs on the host (as per the os
module).
Setting this limit greater than UV_THREADPOOL_SIZE
(defaults to 4) won't really work as desired. Increasing UV_THREADPOOL_SIZE
is a good idea if needed. (e.g. UV_THREADPOOL_SIZE=10 grunt zopfli
)
zopfli({ limit: 1 })
Options object to pass through to node-zopfli. See node-zopfli documentation for more information.
{
verbose: false,
verbose_more: false,
numiterations: 15,
blocksplitting: true,
blocksplittinglast: false,
blocksplittingmax: 15
};
zopfli: {
main: {
files: [{
src: ['path/*'],
dest: 'gzipped_files/',
filter: 'isFile'
}]
}
}
zopfli: {
main: {
expand: true,
cwd: 'assets/',
src: ['**/*'],
dest: 'public/'
}
}
zopfli: {
main: {
files: [{
expand: true,
cwd: 'build/',
src: ['*.{png,jpg,js}'],
dest: 'build/compressed/'
}],
options: {
extension: ''
}
}
}