All cheatsheetsFrontend Development

volta

Volta 1.x

Quick reference for everyday Volta commands: install Node / npm / Yarn / pnpm toolchains, pin per-project versions, manage global packages, and troubleshoot Volta itself — with common options and practical examples.

25 commands

Install Volta itself

curl https://get.volta.sh | bash

Official POSIX install script. Detects your platform, downloads the latest release tarball, verifies SHA-256, and installs to `~/.volta` with PATH entries in `~/.profile` / `~/.zshrc`.

--skip-setup skip PATH edits; -v verbose; --version X.Y.Z pin to a specific release

curl https://get.volta.sh | bash -s -- --version 1.1.1
iwr https://get.volta.sh | iex

PowerShell install command on Windows. Same behaviour as the bash script — downloads MSI / EXE, sets `VOLTA_HOME` and PATH for the current user.

iwr https://get.volta.sh | iex

Install Node

volta install node

Install the latest Node.js LTS release and set it as the global default. The `node`, `npm`, and `npx` shims are wired to the installed version.

<version> install a specific version (e.g. [email protected])

volta install node@20
volta install node@<version>

Install a specific Node.js version (e.g. node@18, [email protected], node@latest). Volta keeps all installed versions side by side; pin via `package.json` to switch.

volta install [email protected] && volta install [email protected]

Pin per-project

volta pin node@<version>

Write `volta.node` into the project's `package.json` so every team member gets this version when they run `volta install`.

volta pin node@20 && volta pin npm@10 && volta pin [email protected]
volta pin npm@<version>

Pin the npm version used inside this project, independent of Node's bundled npm.

volta pin yarn@<version>

Pin Yarn (classic 1.x). For Yarn Berry (2+) use the `yarn` and `yarn@berry` form.

volta pin pnpm@<version>

Pin pnpm so `pnpm install` always uses the same release on every machine.

Globals

volta install <package>

Install a global npm package and capture its tool in Volta. The binary becomes available on PATH via Volta shims and is tracked in the user's Volta home.

-v verbose; --no-progress hide progress UI

volta install typescript tsx vitest
volta install <package>@<version>

Install a global package at a pinned version. Useful for tools like TypeScript where you want the same compiler for all projects.

volta install [email protected]
volta uninstall <package>

Remove a globally-tracked npm package and its shim.

volta uninstall typescript

Manage installed tools

volta list

List all installed Node / package-manager / global tool versions Volta knows about.

node; npm; yarn; pnpm; packages

volta list node && volta list packages
volta list node

List only installed Node.js versions with the currently-default one marked.

volta list node
volta list packages

List globally-installed npm packages and their pinned versions.

volta list packages
volta which <tool>

Print the absolute path of the binary Volta will dispatch to for the current directory (respects per-project pins).

volta which node && volta which npm && volta which yarn
volta fetch

Pre-download a Node / tool release into Volta's cache without installing it. Useful for offline CI.

--platform linux-x64 override target platform

volta fetch [email protected] --platform linux-x64

Project tooling

volta run <command>

Run an arbitrary command with the toolchain that Volta would use in the current project, without modifying your shell.

volta run --node 18 --yarn 1.22 npm test
volta run --node <v> --npm <v> --yarn <v> --pnpm <v> <cmd>

Run a command with explicit overrides that take precedence over project pins (handy for one-off compatibility checks).

volta run --node 18 --npm 9 npm run build
volta setup

Re-add Volta to your shell rc files (PATH + `VOLTA_HOME` env). Run after a shell upgrade or after `volta install` was run with `--skip-setup`.

volta setup

Diagnostics

volta --version

Print Volta's version.

volta --version
volta --help

Show top-level help listing every subcommand.

volta --help
volta doctor

Walk through common environment problems (PATH, shim conflicts, stale install, proxy issues) and suggest fixes.

volta doctor
echo $VOLTA_HOME

Show where Volta stores tools and shims (default `~/.volta` on POSIX, `%LOCALAPPDATA%\Volta` on Windows).

echo $VOLTA_HOME && ls $VOLTA_HOME/tools/image/node

Uninstall

rm -rf $VOLTA_HOME

Erase all installed toolchains (POSIX). Pair with removing the PATH lines from your shell rc to fully remove Volta.

rm -rf $VOLTA_HOME && sed -i '/volta/d' ~/.zshrc
Remove-Item -Recurse -Force $env:VOLTA_HOME

Same on PowerShell — wipes the Volta home, then delete `Volta` from `HKCU\Environment\Path`.

Remove-Item -Recurse -Force $env:VOLTA_HOME

Related command cheatsheets

About Volta

Volta is a hassle-free JavaScript tool manager created by Chuck Pierce and first released in 2019. It works by installing Node.js, npm, Yarn, and other JS tools once globally, then automatically selecting the right version for each project based on a small `package.json` `volta` field. The current stable line is Volta 1.x. Unlike nvm or n, Volta tracks the chosen tools (not just Node) and ships a fast Rust-based shim engine that intercepts CLI calls and routes them to the right binary in milliseconds. Volta is a good fit when you want to clone a repo, run `yarn install`, and have the exact same Node + Yarn versions everyone on the team uses, with no manual switching. Volta is not a node version manager in the `nvm` sense — it does not provide an interactive shell to pick versions; it enforces what `package.json` says. Because all toolchains live under a single user-writable directory (default `~/.volta`), uninstalling is a single delete. All downloads happen over HTTPS from `volta.sh` / GitHub; no telemetry, no upload.

Cheatsheet version 1.0.0