Skip to content

fix: pin Node.js to 22 so pnpm install/dev work on Node 26+ - #68

Open
trivedi-vatsal wants to merge 1 commit into
uberskillsdev:masterfrom
trivedi-vatsal:fix/pin-node-version-for-pnpm
Open

fix: pin Node.js to 22 so pnpm install/dev work on Node 26+#68
trivedi-vatsal wants to merge 1 commit into
uberskillsdev:masterfrom
trivedi-vatsal:fix/pin-node-version-for-pnpm

Conversation

@trivedi-vatsal

Copy link
Copy Markdown

Problem

On Node.js 26, a fresh pnpm install / pnpm dev fails with:

sh: turbo: command not found

The README lists the prerequisite as Node.js >= 20, which Node 26 satisfies — but the build is actually broken on it.

Root cause

  • The dependency tree's engines only allow Node 20.x || 22.x || 23.x || 24.x || 25.x (i.e. not 26+).
  • better-sqlite3 ships no prebuilt binary for Node 26's ABI, so pnpm install falls back to a source compile that fails against Node 26's V8 headers.
  • That aborts the install before node_modules/.bin/ is linked, so the next command surfaces the confusing turbo: command not found — a symptom, not the real cause.

Fix

Pin the Node version the toolchain uses, and correct the docs:

  • .npmrcuse-node-version=22.23.1. pnpm auto-downloads and runs on a compatible Node for install and all scripts, regardless of the system or nvm default. This makes pnpm install / pnpm dev work out of the box.
  • .nvmrc22, for nvm users (nvm use).
  • README — correct the prerequisite to 20.x–25.x (Node 26+ unsupported) and document the pinning.

Verification

With a plain shell on Node 26 (no nvm), and only these changes applied:

  • pnpm install completes (better-sqlite3 uses a prebuilt binary under Node 22).
  • pnpm dev starts both apps cleanly — web on :3000, landing on :3001.

🤖 Generated with Claude Code

Node 26 satisfies the README's ">= 20" requirement but breaks the build.
The dependency tree's engines allow 20.x-25.x only, and better-sqlite3 has
no prebuilt binary for Node 26's ABI, so `pnpm install` falls back to a
source compile that fails against Node 26's V8 headers. That aborts install
before bin-linking, which then surfaces as `turbo: command not found` on
`pnpm dev`.

- .npmrc: use-node-version=22.23.1 so pnpm auto-downloads and runs on a
  compatible Node for install and scripts, regardless of the system/nvm
  default Node version.
- .nvmrc: 22 for nvm users.
- README: correct the Node prerequisite (20.x-25.x) and document the pinning.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 20, 2026

Copy link
Copy Markdown

@trivedi-vatsal is attempting to deploy a commit to the helder-4496's projects Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant