Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
node.js plugin loader
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
LICENSE
README.md
index.js
package.json

README.md

jigsaw

jigsaw is a plugin loader for extensible node.js projects.

usage

loading + unloading plugins

var PluginLoader = require('jigsaw');

var myPluginLoader = new PluginLoader('/path/to/plugin/directory');

// give each plugin access to some API methods
myPluginLoader.loadAll({
    someMethodForPluginsToUse: ...,
    someOtherMethodForPluginsToUse: ...,
    someVariableForPluginsToUse: ...,
    ...
});

...

// some time later
myPluginLoader.unloadAll();

plugins look like this

function enable(api) {
    // perform initialization here
    // 'api' is the object that was passed to loadAll(...) in the first code sample
}

function disable() {
    // perform cleanup (if you have to do any) here
}

...

// plugins should be valid node modules
module.exports = {
    enable: enable,    // required – called when your plugin is loaded
    disable: disable,  // optional – if provided, called when your plugin is unloaded
    name: 'MyPlugin',  // optional – if not provided, defaults to name of file containing plugin code
    ...
};

license

jigsaw is made available under the MIT License. See LICENSE for details.

Something went wrong with that request. Please try again.