Have ideas to improve npm?Join in the discussion! »

    port-status

    1.0.3 • Public • Published

    port-status

    Detect port availability.

    Why?

    • Fast and convenient, easy to set up.
    • Namespaces builds in a human-friendly manner.
    • Encourages cache-safe URLs.
    • Uses a solid convention, build/<branch>/<version>.
    • Gracefully handles edge cases for git branches.

    Install

    npm install port-status --save

    Usage

    Get it into your program.

    const portStatus = require('port-status');

    Get a promise for the status of a port, as a lowercase string.

    // On OS X without sudo, this will log 'Status: denied'.
    // If you use sudo and it is free, then 'Status: ok'.
    portStatus(
        80,           // port you want to check
        '127.0.0.1'   // optional hostname to try to bind on
    )
    .then((status) => {
        console.log('Status:', status);
    });

    Port status passes all arguments to Node's net.Server#listen(), so you can also use an object, for example.

    portStatus({
        port     : 80,
        hostname : '127.0.0.1'
    })
    .then((status) => {
        console.log('Status:', status);
    });

    Make your .then() handler conditional, by using convenience methods that reject their promises if the port status is not exactly what you want.

    // This will only log something if the port is already in use. Otherwise, the
    // promise will reject, and you could use .catch() to print something.
    portStatus(
        80,
        '127.0.0.1'
    )
    .ifBusy()
    .then((status) => {
        console.log('Status:', status);
    })

    Contributing

    See our contributing guidelines for more details.

    1. Fork it.
    2. Create your feature branch: git checkout -b my-new-feature
    3. Commit your changes: git commit -am 'Add some feature'
    4. Push to the branch: git push origin my-new-feature
    5. Submit a pull request.

    License

    MPL-2.0

    Go make something, dang it.

    Install

    npm i port-status

    DownloadsWeekly Downloads

    3

    Version

    1.0.3

    License

    MPL-2.0

    Last publish

    Collaborators

    • avatar