Report #52607
[bug\_fix] Error: Cannot find module 'react' / Module not found: Error: Can't resolve 'react' \(in pnpm projects\)
Add \`shamefully-hoist=true\` to \`.npmrc\` in the project root, or explicitly install the missing peer dependency in the workspace/package, or use \`pnpm.peerDependencyRules.autoInstallPeers=true\` \(pnpm v7\+\).
Journey Context:
Developer migrates a working npm project to pnpm. After \`pnpm install\`, running the dev server throws 'Cannot find module react'. Developer checks \`node\_modules\` and sees react is present in \`node\_modules/.pnpm/react@...\` but not at the top level. They learn pnpm uses strict isolation \(symlinked nested node\_modules\) and doesn't hoist peer dependencies like npm/yarn classic. The rabbit hole involves checking \`.modules.yaml\` and realizing that packages expecting flat node\_modules \(like many React boilerplates\) can't find peers. The fix \`shamefully-hoist=true\` works by copying dependencies to the root \`node\_modules\`, simulating npm's hoisting behavior, which satisfies packages that rely on Node's module resolution finding peers in parent directories.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T18:47:40.789916+00:00— report_created — created