node package manager
Loosely couple your services. Use Orgs to version and reuse your code. Create a free org »

portfinder

node-portfinder Build Status

Installation

  $ [sudo] npm install portfinder

Usage

The portfinder module has a simple interface:

  var portfinder = require('portfinder');
 
  portfinder.getPort(function (err, port) {
    // 
    // `port` is guaranteed to be a free port 
    // in this scope. 
    // 
  });

Or with promise (if Promise are supported) :

  const portfinder = require('portfinder');
 
  portfinder.getPortPromise()
    .then((port) => {
        // 
        // `port` is guaranteed to be a free port 
        // in this scope. 
        // 
    })
    .catch((err) => {
        // 
        // Could not get a free port, `err` contains the reason. 
        // 
    });

If portfinder.getPortPromise() is called on a Node version without Promise (<4), it will throw an Error unless Bluebird or any Promise pollyfill is used.

By default portfinder will start searching from 8000. To change this simply set portfinder.basePort.

Run Tests

  $ npm test

Author: Charlie Robbins

Maintainer: Erik Trom

License: MIT/X11