exporter

Help export your modules by file or directory and store in global

npm install exporter
10 downloads in the last month

Node Exporter

Useful modules exporter for global use.

We always need load modules with following codes:

var email = require('../../helpers/email')

If create much more files and directories, I will angry with using the absolute path. So there is a exporter, it is global definition for you.

Load modules:

var $ = require('exporter');

$('email', __dirname + '/email.js');

Use it

var $ = require('exporter');

// Use it
$.email('hfcorriez@gmail.com');

Install

npm install exporter

Usage

Export

In bootstrap file, such as app.js in Express.

Export variables

var $ = require('exporter');

// Load with variables
$.debug = true;
$.env = process.ENV['NODE_ENV'];

Export modules from file or directory

Project structure such as:

- app.js
- helpers/
  - uploader.js
  - image.js
  - email.js
  - tools/
    - guid.js

Export

// Set module directly
$.uploader = require('./helpers/uploader');

// Or use exporter
$.email = $(__dirname + '/helpers/email.js');

// And it's same as follow

// Or use function export only
$('email', __dirname + '/helpers/email.js');

// Export modules in directory
$.helpers = $(__dirname + './helpers');

// Export modules recursive in directory
$('allHelpers', __dirname + '/helpers', true);

Use exporter

In your process file or Express controller

var $ = require('exporter');

if ($.debug && $.env == 'product') {
    // Some logic
}

var guid = $.allHelpers.tools.guid();
var sendEmail = $.helpers.email;
var uploader = $.uploader;

More

In Express application. You can use to export all routes.

var $ = require('exporter');

$.routes = $(__dirname + '/routes', true);

If you have the structure such as:

- routes/
  - register.js
  - api/
    - users.js

And you can use it simply

var $ = require('exporter');

app.get('/register', $.routes.register);
app.get('/api/users', $.routes.api.users);
npm loves you