Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Implements the node.js require.resolve() algorithm
branch: master

This branch is 5 commits ahead, 103 commits behind substack:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
test
.travis.yml
LICENSE
README.markdown
index.js
package.json

README.markdown

Node Module Resolver

Asynchronous implementation of the node require.resolve() algorithm except you can pass in the file to compute paths relatively to along with your own require.paths without updating the global copy (which doesn't even work in node >=0.5).

methods

var resolve = require('node-module-resolver');

resolve.async(pkg, opts, callback)

Asynchronously search for the package/filename string pkg according to the require.resolve() algorithm for X=pkg and Y=opts.basedir. Callback is fired with the located module or without arguments if nothing is found.

Default values for opts

{
    paths : [],
    basedir : __dirname,
    extensions : [ '.js' ],
    readFileSync : fs.readFileSync,
    isFile : function (file) {
        return path.existSync(file) && fs.statSync(file).isFile()
    }
}

Optionally you can specify a opts.packageFilter function to map the contents of JSON.parse()'d package.json files.

If nothing is found, all of the directories in opts.paths are searched.

resolve.isCore(pkg)

Return whether a package is in core.

Thanks

To the Node team for documenting what their mad-cap system is, and James Halliday for the synchronous implementation Node-Module-Resolver is forked from.

Something went wrong with that request. Please try again.