JsLoader
Features:
- Loading synchronously AMD modules inside Node.js
- Common API for loading AMD and CommonJs modules
- Namespacing JavaScript code
Examples
Loading modules
var auto = require("jsloader"),
SomeAMDModule = auto.load("modules/amd/Some"),
OtherCommonJSModule = auto.load("modules/commonjs/Other");
Loading namespaced code
Autoloader scans for package.json files in every node module so namespaces are
loaded automatically.
/node_modules/foo/package.json
{
"name": "foo",
"autoload": {
"amd": {
"SomeNamespace/Foo": "folder/with/Foo",
},
"commonjs": {
"SomeNamespace/Foo/Bar": "folder/with/commonjs/Foo"
}
}
}
/node_modules/bar/package.json
{
"name": "bar",
"autoload": {
"amd": {
"SomeNamespace/Bar": "folder/with/Bar"
}
}
}
/yourscript.js
var auto = require("jsloader"),
Foor = auto.load("SomeNamespace/Foo/Foor"),
Boor = auto.load("SomeNamespace/Bar/Boor"),
Booz = auto.load("SomeNamespace/Foo/Bar/Booz");