UGLIFY-JS(1)

🌸 NAME 🌸

okay so bestie, welcome to uglify-js β€” that's the manual page, section 1, the whole User Commands situation πŸ’… β€” and she is literally a JavaScript parser, mangler/compressor and beautifier toolkit. all of that. one tool. main character energy fr fr πŸ‘‘


✨ SYNOPSIS ✨

uglifyjs [files...] [options]

πŸ’– OPTIONS πŸ’–

  • -h, --help β€” prints the usage info. want the deets on every single option available? hit --help options and she'll spill 🫢
  • -v, -V, --version β€” prints the version number. three whole ways to ask, iconic.
  • -p, --parse <options> β€” specify parser options.
  • -c, --compress [options] β€” enable the compressor / specify compressor options.
  • -m, --mangle [options] β€” mangle names / specify mangler options.
  • --mangle-props [options] β€” mangle properties / specify mangler options.
  • -b, --beautify [options] β€” beautify the output / specify output options.
  • -O, --output-opts <options> β€” output options, but with beautify disabled.
  • -o, --output <file> β€” the output file. default is STDOUT, no cap.
  • --annotations β€” process and preserve comment annotations.
  • --no-annotations β€” ignore and discard comment annotations.
  • --comments [filter] β€” preserve copyright comments in the output. gotta protect the legal vibes ✨
  • --config-file <file> β€” read minify() options from a JSON file.
  • -d, --define <expr>[=value] β€” global definitions.
  • -e, --enclose [arg[,...][:value[,...]]] β€” embed everything in a big function, with configurable argument(s) & value(s).
  • --expression β€” parse a single expression, rather than a program.
  • --ie β€” support non-standard Internet Explorer. yes bestie, that Internet Explorer 😭
  • --keep-fargs β€” do not mangle/drop function arguments.
  • --keep-fnames β€” do not mangle/drop function names. useful for code relying on Function.prototype.name.
  • --module β€” process input as an ES module (implies --toplevel).
  • --no-module β€” process input with improved JavaScript compatibility.
  • --name-cache <file> β€” file to hold mangled name mappings.
  • --rename β€” force symbol expansion.
  • --no-rename β€” disable symbol expansion.
  • --self β€” build UglifyJS as a library (implies --wrap UglifyJS).
  • --source-map [options] β€” enable source map / specify source map options.
  • --timings β€” display operations run time on STDERR.
  • --toplevel β€” compress and/or mangle variables in toplevel scope. going all the way up, periodt.
  • --v8 β€” support non-standard Chrome & Node.js.
  • --validate β€” perform validation during AST manipulations.
  • --verbose β€” print diagnostic messages.
  • --warn β€” print warning messages.
  • --webkit β€” support non-standard Safari/Webkit.
  • --wrap <name> β€” embed everything as a function with ???exports??? corresponding to ???name??? globally. (yes the manpage really renders those bits as question marks, we love a mysterious queen πŸ™ˆ)

πŸ› οΈ (internal debug use only)

these two are not for casual usage bestie, they're the backstage pass πŸŽ€

  • --in-situ β€” warning: replaces original source files with minified output. like, it will eat your originals. be so careful, this is not a drill πŸ’€
  • --reduce-test β€” reduce a standalone test case (assumes cloned repository).

ngl this is the whole page. no options skipped, no flags dropped, we did not play about it 🫢

and that's a wrap, bestie β€” this was uglify-js version 3.19.3, from April 2026, and you just read the whole thing. slay, ate, left no crumbs πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from