canirequire › Dual (CommonJS + ESM) › dequal
Is dequal ESM-only? Can you require() it?
A tiny (304B to 489B) utility for check for deep equality
Last verified Sep 9, 2026 against dequal@2.0.3. JSON
Dual (CommonJS + ESM) Dual package — both require() and import work
dequal publishes both a CommonJS entry and a native ESM entry (ESM added in 2.0.0). require("dequal") and import "dequal" both work on every supported Node.js version and in Bun.
Does dequal@2.0.3 actually load? Runtime test results
Installed and executed on Sep 9, 2026 with require("dequal") from a CommonJS file and import "dequal" from an ES module.
| Runtime | require("dequal") | import "dequal" |
|---|---|---|
| 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 dequal
ES modules (import)
import dequal from "dequal";CommonJS (require)
const dequal = require("dequal");Module format by version
Derived from the type, main and exports fields of every stable release on npm (7 versions; the newest 7 shown).
| Versions | Format | First published |
|---|---|---|
| 2.0.0 – 2.0.3 | Dual (CommonJS + ESM) | Aug 12, 2020 |
| 0.0.0 – 1.0.1 | CommonJS | Mar 7, 2019 |
Frequently asked
Is dequal ESM-only?
dequal@2.0.3 ships CommonJS and ESM builds. dequal publishes both a CommonJS entry and a native ESM entry (ESM added in 2.0.0). require("dequal") and import "dequal" both work on every supported Node.js version and in Bun.
Can I require dequal?
Yes. dequal ships a CommonJS entry, so require("dequal") works on every Node.js version, alongside the native ESM entry for import.
Does dequal work in Bun?
Yes. import "dequal" loaded successfully in Bun 1.4 on Sep 9, 2026.
Does dequal ship TypeScript types?
Yes. dequal bundles its own type declarations; no @types package is needed.
Links
Other dual (commonjs + esm) packages
- minimatch 10.2.6Dual
- brace-expansion 5.0.9Dual
- lru-cache 11.5.2Dual
- glob 13.0.6Dual
- eslint-visitor-keys 5.0.1Dual
- yallist 5.0.0Dual
- balanced-match 4.0.4Dual
- js-yaml 5.4.1Dual
Similar popularity
- d3-timer 3.0.1ESM-only
- date-fns 4.4.0Dual
- jest-matcher-utils 30.5.1Dual
- loose-envify 1.4.0CommonJS
- object.values 1.2.1CommonJS
- htmlparser2 12.0.0ESM-only
- data-urls 7.0.0CommonJS
- string.prototype.trimend 1.0.10CommonJS