700 releases (165 breaking)
Uses new Rust 2021
|new 0.166.3||Jan 27, 2023|
|0.165.4||Jan 24, 2023|
|0.160.28||Dec 21, 2022|
|0.160.1||Nov 30, 2022|
|0.16.1||Jul 31, 2021|
#696 in Web programming
17,003 downloads per month
Used in 31 crates (9 directly)
EcmaScript minifier for the SWC project. This is basically a port of terser.
Currently name mangler is very simple. To focus on creating a MVP, I (kdy1) will use simple logic for name mangler and implement the content-aware name mangler after publishing first non-beta version.
If the output contains variables named
n it typically means the original library is published in a minified form and the input contains
The current swc name mangler does not do anything if
eval is used.
Profiling the minifier
From mac os x, run
Like other minification tools, swc minifier assumes some things about the input code.
- TDZ violation does not exist.
In other words, TDZ violation will be ignored.
- Acesssing top-level identifiers do not have side effects.
If you declare a variable on
globalThis using a getter with side-effects,
swc minifier will break it.
In debug build, if you set an environment variable
minifier will check the validity of the syntax using
If you enable this cargo feature and set the environment variable named
1, the minifier will validate the code using node before each