TypeScript icon, indicating that this package has built-in type declarations

    3.0.0 • Public • Published

    Build Status

    This is a very small package that allows developers to find free ports on the local system. Unlike most other "find-free-port" utilities, this library allows scanning for multiple free ports at once, making sure that there are no doubles in the result.

    ✔️ TypeScript support

    ✔️ No dependencies

    ✔️ Should work on all major NodeJS versions

    ✔️ Now automatically tested for mistakes

    This library has been benchmarked and parallelises the port checks using a customisable number of workers for optimal performance. The alogithm does not create a new anonymous socket for each port, but instead iterates in parallell over the system's port numbers. This is both faster and less resource-intensive.

    🔍 Found an issue? Please let me know in the issue tracker and we'll get it fixed ASAP.

    npm i find-free-ports


    Import the library:

    import findFreePorts from "find-free-ports"


    const findFreePorts = require('find-free-ports');

    Next, call the main function with the amount of free ports you need:

    async function startMultipleServers() {
      const [a, b, c, d] = await findFreePorts(4);
      // now do something interesting with the new ports ...


    findFreePorts(count?, opts?)

    import { findFreePorts } from "find-free-ports"

    Search for the specified amount of free ports on the local machine. If count is left unspecified, it defaults to 1. opts may be a dictionary containing one of the following keys:

    • isFree: custom function that is used to check whether the given port is free
    • startPort: start scanning for free ports starting from this port number. Defaults to 1025.
    • endPort: prevent the scanner from exceeding this port number. Defaults to 65535.
    • jobCount: how much workers that may at most be looking for free ports


    import { isFreePort } from "find-free-ports"

    Check whether the given port is free by trying to set up a socket.

    This function returns a promise containing either true or false depending on whether the port was available.


    import { FindFreePortsOptions } from "find-free-ports"

    A TypeScript interface that lists all valid options that may be passed as the opts parameter to findFreePorts().

    Similar Packages


    The MIT License


    npm i find-free-ports

    DownloadsWeekly Downloads






    Unpacked Size

    26.4 kB

    Total Files


    Last publish


    • samvv