node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป


UglifyJS AST Transformer

The goal of this NodeJS module is to be able to make transformations on AST (Abstract Syntax Tree) other than mangling. The next example shows what you can do and the main purpose of this module. Imagin you have a file with this code:

// file.js
console.log(_("Hello, world!"));

And you want to convert _("...") to "..." similar to what gettext() does.

var transformer = require("ast-transformer");

fs.readFileSync("file.js", function (err, data) {
    if (err) return console.log(err);

    var code = new transformer.Transformer(transformer.parse(data));
    code.replaceFunctionCall("_", function (text) {
        return "Hola, mundo!";

    // will output:
    // console.log("Hola, mundo!");