`@headlessui/react` fails with pnpm strict mode — missing peerDependency on `@types/react`
Author: baraknavehCreated Mar 27, 2026Updated Mar 27, 2026
@headlessui/[email protected] ships .d.ts files that import from react:
import * as React from 'react';TypeScript resolves these types through @types/react, but the package only declares react and react-dom as peer dependencies — not @types/react. This works in flat node_modules layouts (npm, yarn) because @types/react is hoisted from the consuming project. When pnpm hoisting is disabled (hoist: false), TypeScript cannot find the React types and fails with:
error TS2307: Cannot find module 'react' or its corresponding type declarations.Workaround:
packageExtensions:
"@headlessui/react@2":
peerDependencies:
"@types/react": "*"Suggested fix: Add @types/react to peerDependencies in @headlessui/react's package.json.
Source: tailwindlabs/headlessui