Search code examples
javascriptobfuscationminify

Which JavaScript minifier (cruncher) does the same things that the one Google uses for its JavaScript APIs?


I am a Google Maps API (JavaScript) developer. I have noticed that Google uses a JavaScript minifier that has the following features:

  1. Shortens variables, properties, arguments, classes, function and method names, obfuscating the code (e.g., function1 → a, function2 → b, and function3 → c)
  2. Some variables, classes, properties and methods can be marked to not be crunched, so its name remains the same as documented in the API manual.
  3. It is rerun in each subversion of the API, like a build task, I noticed that because of the crunched names changes from one version to another.

I have not found a JavaScript minifier in the whole Internet with those features. Is there one?


Solution

  • Google has now opened up the minifier they use, along with some other internal JavaScript goodies.

    It's all under the name "Closure Tools" and was announced earlier this month.