Nonlinear Performance Magnification

    mothership

    0.3.0 • Public • Published

    mothership build status

    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 the package.json that is the mother ship
    • pack: the package.json object, 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

    Source:

    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

    Source:
    Returns:

    full path to package.json that is the mothership or null if it wasn't found

    Type
    string

    generated with docme

    License

    MIT

    Install

    npm i mothership

    DownloadsWeekly Downloads

    53,065

    Version

    0.3.0

    License

    MIT

    Last publish

    Collaborators

    • thlorenz