0.11.1 • Published 6 years ago

minify-fast v0.11.1

Weekly downloads
2
License
MIT
Repository
github
Last release
6 years ago

Minify a JavaScript file very fast

This package focus on providing space / comment removal from JavaScript code as fast as possible. No mangling, just spaces / comment removal

For those special situations in which a very large file full minification using uglify takes too long to execute.

When you need an intermediate stage before real production and very large files are involved...

Technologies used: By default it will use esprima parser and escodegen code generatorbut it can be configured to use acorn parser and astring code generator .

CLI

npm install -g minify-fast
minify-fast --input src/**/*.js # will modify files in src !
minify-fast --input src/**/*.js --output out

# minify two input globs but this time using acorn parser and dump some debug information: 
minify-fast --input dist/**/*.js --input dist-umd/**/*.js --parser acorn --generator astring --debug

node.js API

npm install --save-dev minify-fast
var minify = require('minify-fast')
// Or if using ES modules / TypeScript
// import minify from 'minify-fast'

const code = `
  let a     = [1  , 2,    3];
  const b = a.map (n => n * 2) /*hello */
  console.log(a, b) 
`
console.log(minify({code}))
// let a=[1,2,3];const b=a.map(n=>n*2);console.log(a,b)

By default it will use acorn parser and astring code generator but it can be configured to use esprima parser and escodegen code generator.

TODO

  • error handling
  • generator astring not minifying
  • support typescript : https://github.com/eslint/typescript-eslint-parser ? mmm we still need a generator right ?
  • another parser : https://github.com/eslint/espree
  • input CLI verification for --parser, --generator, etc and fail OK
  • benchmarks to compare parsers and generators and against real minifiers like google-closure-compiler / uglify
  • sourcemaps ? test if / how affects performance
  • preserve comments ?
  • jsx ?