mothership 
Helps a module find its package.json mothership.
var mothership = require('mothership')
, path = require('path');
mothership(
path.join(__dirname, 'uno', 'dos', 'tres')
, function ismothership (pack) {
return !!(pack.dependencies && pack.dependencies.unodep);
}
, function (err, res) {
if (err) return console.error(err);
console.log('first mothership', res.path); // => [..]/example/uno/package.json
}
)
// Synchronous
var res = mothership.sync(
path.join(__dirname, 'uno', 'dos', 'tres')
, function ismothership (pack) {
return !!(pack.dependencies && pack.dependencies.unodep);
}
)
console.log('found mothership', res.path); // => [..]/example/uno/package.json
Installation
npm install mothership
API
mothership(start, ismothership, cb)
Searches upwards from start for package.json files, asking for each if it is the mothership. If a mothership is found it calls back with that. If it reaches the top of the univers it calls back with nothing.
mothership result
path: full path to thepackage.jsonthat is the mother shippack: thepackage.jsonobject, same that was passed to ismothership
Parameters:
| Name | Type | Description |
|---|---|---|
start |
string | full path at which to start looking for the mothership |
ismothership |
function | invoked with the package object, needs to return true if it is the mothership |
cb |
function | called back with either an error or full path to package.json that is the mothership |
mothership::sync(start, ismothership) → {string}
Synchronous version of mothership.
Parameters:
| Name | Type | Description |
|---|---|---|
start |
string | full path at which to start looking for the mothership |
ismothership |
function | invoked with the package object, needs to return true if it is the mothership |
Returns:
full path to package.json that is the mothership or null if it wasn't found
generated with docme
License
MIT