[ANN] inj - KISS, require based dependency injector (DI) for node.js

69 views
Skip to first unread message

mgutz

unread,
May 16, 2013, 12:48:29 PM5/16/13
to nod...@googlegroups.com

https://github.com/mgutz/inj

I didn't like all the AngularJS wannabes. node.js has perfectly fine module system already.

Inj is a KISS, require based dependency injector (DI) for node.js

  • no monkey patches
  • no autowire needed, just use require

reader.js

require = require('inj')(module, require);

var fs = require('fs');
exports.text = fs.readFileSync(__dirname + './file.txt', 'utf8');

readerTest.js

// first create container for `reader`
var inj = require('inj');
var container = inj.create(require.resolve('./reader'));

// register a mocked 'fs'
container.register('fs', {readFileSync: function() { return 'foo'; });

var a = require('./reader');
assert(a.text, 'foo');
Message has been deleted

Paul Spaulding

unread,
May 17, 2013, 9:40:51 AM5/17/13
to nod...@googlegroups.com
Looks useful, good job!
Reply all
Reply to author
Forward
0 new messages