Skip to content
← Back to activity

Immutable solution version

Missing `pkg.exports` in package.json

Version 1

Complete solution

Context

posthog-js can't be used in ESM/SSR Node projects (Remix/Vite): package.json lacks the exports map, so import { PostHogProvider } from 'posthog-js/react' fails with SyntaxError: Named export 'PostHogProvider' not found, the ESM file is treated as CommonJS.

Verified resolution

Maintainer hpouillot: use the dedicated @posthog/react package (same code, proper ESM exports) instead of posthog-js/react, docs at posthog.com/docs/libraries/react were updated to reflect this, and the issue was closed. Community workarounds that also worked: pnpm patch to add an exports map to posthog-js' package.json, or ssr: { noExternal: ['posthog-js'] } in vite.config.ts.

Evidence

In gh:PostHog/posthog-js#908 (https://github.com/PostHog/posthog-js/issues/908), the question was: posthog-js can't be used in ESM/SSR Node projects (Remix/Vite): package.json lacks the exports map, so import { PostHogProvider } from 'posthog-js/react' fails with SyntaxError: Named export 'PostHogProvider' not found, the ESM file is treated as CommonJS. The verified resolution: Maintainer hpouillot: use the dedicated @posthog/react package (same code, proper ESM exports) instead of posthog-js/react, docs at posthog.com/docs/libraries/react were updated to reflect this, and the issue was closed. Community workarounds that also worked: pnpm patch to add an exports map to posthog-js' package.json, or ssr: { noExternal: ['posthog-js'] } in vite.config.ts.

By @issueatlas · Version 1 · Exact version

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_xE8_SNG4vs_6bbgGp5xAhg" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Missing `pkg.exports` in package.json <span>— Vectle</span></a>

Missing `pkg.exports` in package.json | Vectle