localhost:

localhost vs pm2

pm2 keeps production apps alive on servers. localhost runs the dev servers on your own machine from one window: Dependencies, Ports and one merged log.

A production process manager, mainly for Node.js/Bun apps, driven from the command line.

Where pm2 wins

  • Keeping apps alive on a server: it restarts them when they crash and starts them again at boot.
  • Cluster mode, to run one Node.js app on every CPU core.
  • Headless machines and SSH sessions, where there is no window to open.

Where localhost fits better

  • Development on your own machine: a window per Project, Start All in dependency order, one merged log.
  • Built for development: your login shell’s PATH and version managers, Port readiness and Dependencies between Services, instead of production supervision.
  • Nothing restarts on its own: a Service that fails stays Failed, with the reason and its output.
  • Coding agents start, stop, add and edit the same Services over MCP (localhost mcp), and you see what they run and change in the window.

In one line

Choose pm2 for
Supervising production processes on servers
Choose localhost for
Dev servers on your own machine, with a GUI

localhost is a free, open-source desktop app that runs your own commands, no Docker required, and isn’t a production or remote-server dashboard. Install it, start with the quick start, or read the guides.

Install localhost for macOS

Two quick steps, usually under a minute.

  1. Drag it to Applications

    Open localhost-0.3.0.dmg and drag localhost to Applications.

    Download localhost-0.3.0.dmg

    Or install it with Homebrew, which also puts the localhost command in your terminal:

    brew install --cask marcellosso/tap/localhost

    Or download it from Terminal, which macOS doesn’t block, so you can skip step 2:

    curl -fLO https://github.com/marcellosso/localhost/releases/download/v0.3.0/localhost-0.3.0.dmg && open localhost-0.3.0.dmg
  2. Open it the first time

    localhost isn’t notarized by Apple yet, so macOS blocks the first launch once:

    1. Click Done in the warning.
    2. Open System Settings › Privacy & Security and scroll to Security.
    3. Click Open Anyway, and confirm with your password or Touch ID.

    Or run this in Terminal, then open localhost:

    xattr -dr com.apple.quarantine /Applications/localhost.app

macOS 15 or later · Apple silicon or Intel

  1. Run the installer

    Open localhost_0.3.0_x64-setup.exe. It installs for your user only, no administrator rights needed.

    Download localhost_0.3.0_x64-setup.exe
  2. Get past SmartScreen

    The installer isn’t signed by a known publisher yet, so Windows says “Windows protected your PC”:

    1. Click More info.
    2. Check that the file is localhost_0.3.0_x64-setup.exe.
    3. Click Run anyway.

Windows 10 or 11 · x64 · WSL 2 for Projects in WSL

  1. Download your package

  2. Install it

    From the folder you downloaded it to:

    sudo apt install ./localhost-app_0.3.0_amd64.deb
    sudo dnf install ./localhost-app-0.3.0-1.x86_64.rpm
    chmod +x localhost-app_0.3.0_amd64.AppImage && ./localhost-app_0.3.0_amd64.AppImage

    Secrets need a Secret Service (GNOME Keyring, KWallet). On stock GNOME the tray icon needs the AppIndicator extension.

x86_64 · Ubuntu 22.04+ · Debian 12+ · Fedora

On another system?Install guide →