canirequire

canirequireDual (CommonJS + ESM) › @radix-ui/react-portal

Is @radix-ui/react-portal ESM-only? Can you require() it?

Last verified Sep 9, 2026 against @radix-ui/react-portal@1.1.17. JSON

Dual (CommonJS + ESM) Dual package — both require() and import work

@radix-ui/react-portal publishes both a CommonJS entry and a native ESM entry (ESM added in 1.0.3). require("@radix-ui/react-portal") and import "@radix-ui/react-portal" both work on every supported Node.js version and in Bun.

Latest
1.1.17 (Jul 24, 2026)
Module format
Dual (CommonJS + ESM)
Last CommonJS version
1.1.17
Native ESM since
1.0.3
TypeScript types
Bundled
Node engines
not declared
Weekly downloads
71.5M
License
MIT

Does @radix-ui/react-portal@1.1.17 actually load? Runtime test results

Installed and executed on Sep 9, 2026 with require("@radix-ui/react-portal") from a CommonJS file and import "@radix-ui/react-portal" from an ES module.

Runtimerequire("@radix-ui/react-portal")import "@radix-ui/react-portal"
Node.js 18✓ works✓ works
Node.js 20✓ works✓ works
Node.js 22✓ works✓ works
Node.js 24✓ works✓ works
Node.js 26✓ works✓ works
Bun 1.4✓ works✓ works

How to import @radix-ui/react-portal

ES modules (import)

import reactPortal from "@radix-ui/react-portal";

CommonJS (require)

const reactPortal = require("@radix-ui/react-portal");

Module format by version

Derived from the type, main and exports fields of every stable release on npm (43 versions; the newest 43 shown).

VersionsFormatFirst published
1.0.3 – 1.1.17Dual (CommonJS + ESM)May 26, 2023
0.0.1 – 1.0.2CommonJSDec 15, 2020

Frequently asked

Is @radix-ui/react-portal ESM-only?

@radix-ui/react-portal@1.1.17 ships CommonJS and ESM builds. @radix-ui/react-portal publishes both a CommonJS entry and a native ESM entry (ESM added in 1.0.3). require("@radix-ui/react-portal") and import "@radix-ui/react-portal" both work on every supported Node.js version and in Bun.

Can I require @radix-ui/react-portal?

Yes. @radix-ui/react-portal ships a CommonJS entry, so require("@radix-ui/react-portal") works on every Node.js version, alongside the native ESM entry for import.

Does @radix-ui/react-portal work in Bun?

Yes. import "@radix-ui/react-portal" loaded successfully in Bun 1.4 on Sep 9, 2026.

Does @radix-ui/react-portal ship TypeScript types?

Yes. @radix-ui/react-portal bundles its own type declarations; no @types package is needed.

Links

Other dual (commonjs + esm) packages

Similar popularity