Command to run uglifyjs on a folder and minify the result in a single file or a new folder. Uses the terser package to perform the minification.
Install the module with: npm install uglifyjs-folder -g
Usage
uglifyjs-folder path [options]
options:
-c --comments Add a comment with the file name.
-o --output Specify a file/folder to write the minified code
-e --each Minify each file independently
-x --extension Minified file extension (default: .min.js)
-p --pattern Specifies a comma separated glob patterns for the file selections. Default: **/*.js
--pseparator Specifies the separator for the pattern input. Default: ,
--version Prints the current version from package.json
--config-file Specifies a json configuration file for the terser module
--log-level Specifies the log level used when processing the files. Default: info
-h --help Print this list and exit.
$ uglifyjs-folder test-folder
$ uglifyjs-folder test-folder --comments
$ uglifyjs-folder test-folder -o all.min.js
$ uglifyjs-folder test-folder --output all.min.js --pattern "**/*.js,!**/*min.js" # ignore minified files
$ uglifyjs-folder test-folder -eo newFolder
$ uglifyjs-folder test-folder -eo newFolder --log-level error
$ uglifyjs-folder test-folder-es6 -o newFolder
$ uglifyjs-folder test-folder -e -x .js -o test-folder # careful: overwrite all files in test-folder
$ uglifyjs-folder test-folder --config-file "./uglify.json"
where uglify.json contains
{
"keep_fnames": true
}
Pull requests are appreciated.
-
25/Jun/2023
- Upgraded terser to 5.18.1
-
29/Dec/2022
- Upgraded terser to 5.16.1
-
31/Oct/2022
- Fixed the line ending during npm publish. Fixes #34
-
21/Aug/2022
- Upgraded terser to 5.14.2
-
02/Apr/2022
- Upgraded terser to 5.12.1
- Upgraded the development dependencies to the latest version
- Removed the testing on node v10 from travis ci
- Fixes #32
-
21/Jun/2021
- Upgraded terser to 5.7.0
- Modified the package API from synchronous to async/await The cli interface remained the same.
-
23/Jul/2020
- Released 2.0.0 with the terser minifier.
- Removed uglify-js and uglify-es from the dependencies.
- Upgraded all the dependencies to the latest version.
- Adds snapshots testing to the existing testing suite
- Adds the --log-level option
-
20/Apr/2020 - Updated code to use promises for the mkdrip call.
-
18/Apr/2020 - Updated the version for the mkdirp package #22
-
25/Nov/2017 - Added support for sourcemaps via the uglifyjs config file
Exmaple configuration:
{
"sourceMap": {
"root": "../src",
"url": "{file}.map"
}
}
- 11/Nov/2017 - Added support for the --config-file option
- 11/Nov/2017 - Upgraded to uglify-js@3 and uglify-es@3
- 27/Aug/2017 - Added support for the --pattern and --pseparator flags.
- 06/Feb/2017 - Added support for the --harmony flag.
- 28/Dec/2016 - Added support for sub folder output files.
Example:
uglifyjs-folder test-folder -o newFolder/nested/all.min.js
- 01/Oct/2016 - Added the --extension flag
- 12/Oct/2014 - Removes the extra files, organizes the code
- 05/Jan/2014 - Initial release
Copyright (c) 2014 - 2020 Mihai Ionut Vilcu Licensed under the MIT license.