atc

amd-to-closure

Transform AMD modules to Google Closure modules

Showing:

Popularity

Downloads/wk

4

Maintenance

No Maintenance Data Available

Package

Dependencies

4

Size (min+gzip)

26.8KB

License

BSD-2-Clause

Type Definitions

Tree-Shakeable

No?

Categories

Readme

Transform AMD modules to Closure Compiler dependency syntax

This an experimental code transform that takes AMD modules and outputs Closure Compiler compatible code. This lets you write AMD code in development and still have the benefits of Closure Compiler's optimizations. Unfortunately Closure Compiler's native support for AMD modules is lacking and has some unfortunate side-effects so transforming modules is the way to go for now.

Installation

$ npm install amd-to-closure -g

Usage

$ amd-to-closure <baseUrl> <file>

AMD compatibility

The transformer supports most of the AMD specification, but not the CommonJS-like syntax. The following AMD module:

// component.js
define(['core/dom', 'util/template', function (dom, template) {
  ...
  return dom.expand(template);
});

Transforms to:

goog.provide('component');

goog.require('core.dom');
goog.require('util.template');

...

component = core.dom.expand(util.template);

Note that the parameters to the define function are correctly rewritten to their Closure Compiler dependency syntax equivalent.

License

Licensed under the three-clause BSD license.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100