canirequire

canirequireCommonJS › crypto-js

Is crypto-js ESM-only? Can you require() it?

JavaScript library of crypto standards.

Last verified Sep 9, 2026 against crypto-js@4.2.0. JSON

CommonJS CommonJS — require() works on every Node.js version

crypto-js ships CommonJS only. require("crypto-js") works everywhere. import "crypto-js" also works because Node.js and Bun can import CommonJS from ES modules, but only the default export is guaranteed; named imports depend on Node's static analysis of the module.

Latest
4.2.0 (Oct 24, 2023)
Module format
CommonJS
Last CommonJS version
4.2.0
TypeScript types
@types/crypto-js
Node engines
not declared
Weekly downloads
16.9M
License
MIT

Deprecated: Active development of CryptoJS has been discontinued. This library is no longer maintained.

Does crypto-js@4.2.0 actually load? Runtime test results

Installed and executed on Sep 9, 2026 with require("crypto-js") from a CommonJS file and import "crypto-js" from an ES module.

Runtimerequire("crypto-js")import "crypto-js"
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 crypto-js

ES modules (import)

import cryptoJs from "crypto-js";

Named imports from a CommonJS package only work when Node.js can statically detect them. If a named import fails, use the default import and destructure.

CommonJS (require)

const cryptoJs = require("crypto-js");

Module format by version

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

VersionsFormatFirst published
3.1.2 – 4.2.0CommonJSMay 7, 2013

Frequently asked

Is crypto-js ESM-only?

crypto-js@4.2.0 is a CommonJS package. crypto-js ships CommonJS only. require("crypto-js") works everywhere. import "crypto-js" also works because Node.js and Bun can import CommonJS from ES modules, but only the default export is guaranteed; named imports depend on Node's static analysis of the module.

Can I import crypto-js with ES module syntax?

Yes. import cryptoJs from "crypto-js" works in Node.js and Bun because they support importing CommonJS modules. Named imports work only when Node.js can statically detect the exports.

Does crypto-js work in Bun?

Yes. import "crypto-js" loaded successfully in Bun 1.4 on Sep 9, 2026.

Does crypto-js ship TypeScript types?

Not bundled. Install the community types with "npm install -D @types/crypto-js".

Links

Other commonjs packages

Similar popularity