🐊Putout-based JavaScript minifier.
npm i @putout/minifyHere is list of supported 🐊Putout transformations:
- ✅
apply-template-literals; - ✅
apply-optional-chaining; - ✅
conditions; - ✅
convert-to-arrow-function; - ✅
arguments; - ✅
declare; - ✅
for-of; - ✅
logical-expressions; - ✅
merge-duplicate-functions; - ✅
esm/merge-duplicate-imports; - ✅
destructuring; - ✅
minify; - ✅
new; - ✅
regexp; - ✅
reuse-duplicate-init; - ✅
remove-empty; - ✅
remove-nested-blocks; - ✅
remove-unused-expressions; - ✅
arguments; - ✅
remove-useless-else; - ✅
return/remove-useless; - ✅
remove-useless-spread; - ✅
variables; - ✅
remove-console; - ✅
remove-debugger; - ✅
remove-unreachable-code; - ✅
simplify-ternary; - ✅
types;
import{minify}from'@putout/minify';minify(` const a = 5; const b = 6; fn(a, b);`);// returnsvara=5,b=6;fn(a,b);You can also pass options to minify. Here is list of default options:
({quotes: `'`,fixCount: 1,// the more fixCount - less output sizeconditions: false,mangleClassNames: true,mangle: true,mergeVariables: true,removeUnusedVariables: false,removeConsole: false,removeUselessSpread: true,applyTemplateLiterals: true,convertStrictEqualToEqual: false,});And usage example:
import{minify}from'@putout/minify';constsource=` const a = 5; const b = 6;`;minify(source,{removeUnusedVariables: false,});MIT