UglifyJS 3
JavaScript parser, mangler, compressor, beautifier toolkit
...A tree transformer, another API intended to transform the tree. All the above utilities and APIs are defined in ~6500 lines of code (except for the effective generation of the source-map, which is handled by the source-map module). Compared to alternatives, UglifyJS is pretty small.