A very light minifier Node.js module.
It allows you to compress JavaScript, CSS, HTML, and image files.
JavaScript:
- esbuild
- Google Closure Compiler
- oxc
- swc
- terser
- uglify-js
- babel-minify(deprecated)
- uglify-es(deprecated)
- YUI Compressor(deprecated)
CSS:
- clean-css
- cssnano
- CSSO
- esbuild
- lightningcss
- crass(deprecated)
- sqwish(deprecated)
- YUI Compressor(deprecated)
HTML:
JSON:
Image:
Other:
Command Line Interface:
Benchmark:
- Benchmark - Compare compressor performance
npm install @node-minify/core
# Or Yarn
yarn add @node-minify/core
# Or pnpm
pnpm add @node-minify/core
# Or Bun
bun add @node-minify/coreAnd install the compressor(s) you want:
npm install @node-minify/terser # Recommended - modern, fast, well-maintained
npm install @node-minify/esbuild # Extremely fast, also handles CSS
npm install @node-minify/swc # Rust-based, very fast
npm install @node-minify/oxc # Rust-based, cutting-edge
npm install @node-minify/uglify-js # Classic, battle-tested
npm install @node-minify/google-closure-compiler # Advanced optimizationsnpm install @node-minify/lightningcss # Recommended - Rust-based, fastest
npm install @node-minify/esbuild # Also handles JS
npm install @node-minify/clean-css # Feature-rich, reliable
npm install @node-minify/cssnano # PostCSS-based, customizable
npm install @node-minify/csso # Structural optimizationsnpm install @node-minify/html-minifier # HTML minification
npm install @node-minify/jsonminify # JSON minificationnpm install @node-minify/sharp # WebP/AVIF conversion, high performance
npm install @node-minify/svgo # SVG optimization
npm install @node-minify/imagemin # PNG/JPEG/GIF compressionimport{minify}from'@node-minify/core';import{gcc}from'@node-minify/google-closure-compiler';import{terser}from'@node-minify/terser';// Using Google Closure Compilerconstresult=awaitminify({compressor: gcc,input: 'foo.js',output: 'bar.js'});// Using terser with wildcardsconstmin=awaitminify({compressor: terser,input: 'src/**/*.js',output: 'dist/bundle.js'});// Using Promiseminify({compressor: terser,input: 'src/**/*.js',output: 'dist/bundle.js'}).then((min)=>{console.log(min);});import{minify}from'@node-minify/core';import{htmlMinifier}from'@node-minify/html-minifier';consthtml=`<!doctype html><html> <head> <meta charset="utf-8"> </head></html>`;constmin=awaitminify({compressor: htmlMinifier,content: html});console.log(min);Visit https://node-minify.2clics.net for full documentation.