Package Exports
- minify
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (minify) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Minify

Minify - a minifier of js, css, html and img files.
To use minify
as middleware try Mollify.
Install
npm i minify -g
How to use?
CLI
The bash command below prompts the user to enter a code snippet to be saved in "hello.js".
Press <enter>
after the closing }
and then either ^D or ^C to finish the prompt.
$ cat > hello.js
const hello = 'world';
for (let i = 0; i < hello.length; i++) {
console.log(hello[i]);
}
^D
Use the command minify
followed by the path to and name of the js file intended to be minified. This will minify the code and output it to the screen.
$ minify hello.js
const hello="world";for(let l=0;l<hello.length;l++)console.log(hello[l]);
You can capture the output with the following:
$ minify hello.js > hello.min.js
Code Example
minify
can be used as a promise
:
const minify = require('minify');
const options = {
html: {
removeAttributeQuotes: false,
removeOptionalTags: false
},
};
minify('./client.js', options)
.then(console.log)
.catch(console.error);
Or with async-await
and try-to-catch:
const minify = require('minify');
const tryToCatch = require('try-to-catch');
const options = {
html: {
removeAttributeQuotes: false,
removeOptionalTags: false
}
};
async () => {
const [error, data] = await tryToCatch(minify, './client.js', options);
if (error)
return console.error(error.message);
console.log(data);
}();
Options
The options object accepts configuration for html
, css
, js
, and img
like so:
const options = {
html: {
removeAttributeQuotes: false,
},
css: {
compatibility: '*',
},
js: {
ecma: 5,
},
img: {
maxSize: 4096,
}
}
Full documentation for options that each file type accepts can be found on the pages of the libraries used by minify to process the files:
- HTML: https://github.com/kangax/html-minifier
- CSS: https://github.com/jakubpawlowicz/clean-css
- JS: https://github.com/terser/terser
- IMG: https://github.com/Filirom1/css-base64-images
Minify sets a few defaults for HTML that may differ from the base html-minifier
settings:
- removeComments: true
- removeCommentsFromCDATA: true
- removeCDATASectionsFromCDATA: true
- collapseWhitespace: true
- collapseBooleanAttributes: true
- removeAttributeQuotes: true
- removeRedundantAttributes: true
- useShortDoctype: true
- removeEmptyAttributes: true
- removeEmptyElements: false
- removeOptionalTags: true
- removeScriptTypeAttributes: true
- removeStyleLinkTypeAttributes: true
- minifyJS: true
- minifyCSS: true
License
MIT