Skip to content

Installing Node.js

In this guide

What Node.js is and why some Indigo integrations need it, the three commands it installs (node, npm and npx), how to install it from the official installer, and how to check that it works, including from apps that aren't run from Terminal.

Indigo doesn't need Node.js, and most Indigo users will never install it. You only need it when a plugin or integration you want to use tells you it does. This page explains what you're installing and walks you through installing it and checking it works.


What Node.js is

Node.js (usually just "Node") runs programs written in JavaScript on your Mac. JavaScript started out as the language of web pages, but a lot of software is now written in it and runs on its own, outside a browser. Node is what runs those programs. Much of the time you don't see it at all: another app starts it in the background.

Installing Node gives you three commands:

Command What it does
node The Node program itself. It runs JavaScript programs.
npm The Node Package Manager. It downloads and installs JavaScript packages (ready-made programs and libraries) from the public npm registry at npmjs.com.
npx Runs a command from a package, downloading the package first if it isn't already on your Mac. Many tools tell you to use npx so that you don't have to install anything separately.

You can't use one part without the others: npm and npx are themselves JavaScript programs that node runs, and all three come in the same installer.

Why you might want it

Some examples of things you might use with Indigo that need Node:

  • Some third-party plugins. A plugin's documentation or store page will say if it needs Node.
  • Node-RED, a popular visual automation tool that some Indigo users run alongside Indigo.
  • Connecting Claude Desktop to Indigo. The bridge Claude Desktop uses to reach Indigo's MCP server is a small Node program that runs with npx. See Connecting a Chat Client.

If nothing you use asks for Node, you don't need to install it.

npx runs code from the internet

When you give npx a package name, it downloads that package from the npm registry and runs it on your Mac, with the same access to your files as you have. Only use package names that come from documentation you trust, and type them exactly. A misspelled package name could be a different package published by someone else.


Using the official installer

The easiest way to install Node is the official macOS installer. It installs node, npm and npx in /usr/local/bin, where Terminal and other Mac apps can all find them.

  1. Go to nodejs.org and click Download.
  2. Choose the LTS version. LTS ("long-term support") versions get fixes for much longer, while "Current" versions change more often. Plugins and tools are tested against LTS.
  3. Download the macOS Installer (.pkg), not a prebuilt "binary" or the Docker option.
  4. Open the downloaded .pkg file and follow the steps. You'll be asked for an administrator password.

That's everything. You don't need to restart your Mac.

Already use Homebrew or nvm?

If you manage developer tools with Homebrew (brew install node) or a version manager such as nvm, those work too. Just note that they put Node somewhere other than /usr/local/bin, for example /opt/homebrew/bin on Apple silicon Macs. Apps that you don't open from Terminal may then not find it. See Apps that don't run from Terminal below.


Checking the installation

Open Terminal (in Applications → Utilities) and run each of these commands. Each one should print a version number. The exact numbers will differ from these examples:

$ node --version
v22.20.0
$ npm --version
10.9.3
$ npx --version
10.9.3

Then check where Node was installed:

$ which npx
/usr/local/bin/npx

If you used the official installer, you should see /usr/local/bin/npx. Make a note of the path whichever way you installed Node: some setups ask you for it.

Finally, check that Node can actually run a program:

$ node -e "console.log('Node is working')"
Node is working

If any command prints command not found, the installation didn't finish. Run the installer again, then open a new Terminal window. A window that was already open before you installed Node won't pick up the new commands.


Apps that don't run from Terminal

Terminal looks for commands in a list of folders called your path, and your shell settings can add folders to that list. Apps you open from the Finder or the Dock don't read those settings. They get a shorter, built-in list. So a command that works in Terminal can still fail in an app with an error such as spawn npx ENOENT (that is, "couldn't find npx").

If you installed Node with the official installer, this rarely comes up, because /usr/local/bin is a standard location. If you installed it another way, or you do see that error:

  • Give the app the full path from which npx (for example /opt/homebrew/bin/npx) instead of just npx.
  • Tell the app where node is, too, if it lets you set environment variables. npx needs to find node to run, so the full path to npx alone isn't always enough. Set PATH to a list that starts with the folder which node printed, for example /opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin.

The Claude Desktop setup in Connecting a Chat Client shows where both of these go in its configuration file.


Keeping Node up to date

The official installer doesn't update itself. To update, download the current LTS installer from nodejs.org and run it again: it replaces the version you have. If you installed with Homebrew, run brew upgrade node.

Removing Node

The official installer has no uninstaller. If you're sure nothing you use still needs Node, you can remove it in Terminal:

sudo rm -rf /usr/local/bin/node /usr/local/bin/npm /usr/local/bin/npx \
  /usr/local/bin/corepack /usr/local/lib/node_modules /usr/local/include/node \
  /usr/local/share/doc/node /usr/local/share/man/man1/node.1

Some of those may not exist on your Mac, depending on the Node version. That's fine.

Packages that npx downloaded are kept in a cache folder, ~/.npm. You can delete that too.