Skip to content

Migrate library from CJS to ESM #640

@bliuchak

Description

@bliuchak

Migrate the library module system from CommonJS to ECMAScript Modules (ESM).

ESM is the official JavaScript module system and enables bundlers to tree-shake unused code, resulting in smaller bundles for library consumers. It also provides better static analysis, improved IDE and TypeScript support, and access to modern features like top-level await. The broader ecosystem has largely moved to ESM, and Node.js 22+ now supports require() of ESM modules, making this the right time to migrate.

PR: #654

Metadata

Metadata

Assignees

Labels

low priorityLow priority issues to be done eventually.t-unblockingIssues with this label are in the ownership of the unblocking team.tech roadmapIssues contributing to tech roadmap.

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions