var dust = require('dustjs-linkedin'); var fs = require('fs'); var argv = process.argv.slice(2); if (argv.length != 1) { console.error("Expecting only 1 argument (a path to a template)"); process.exit(1); } var context = JSON.parse(fs.readFileSync(0, 'utf-8')); try { var template_source = fs.readFileSync(argv[0], 'utf-8'); } catch (err) { console.error(err); process.exit(1); } var compiled_template = dust.compile(template_source, "tmpl"); dust.loadSource(compiled_template); dust.render("tmpl", context, function(err, out) { if(err) { console.error(err); process.exit(1); } else { console.log(out); process.exit(0); } });