/cjs-to-es6

CLI to convert CommonJS to ES6 modules (UNMAINTAINED)

Primary LanguageJavaScriptApache License 2.0Apache-2.0

cjs-to-es6

Maintenance notice: this package is no longer under active maintenance.

CLI to convert JavaScript files from CommonJS to ES6 / ES2015 modules format. The process isn't foolproof, but it can usually get you ~95% of the way there.

This tool uses jscodeshift to run 5to6-codemod and js-codemod under the hood. It attempts to convert require() and module.exports / exports to import and export.

Install

npm i -g cjs-to-es6

Usage

cjs-to-es6 [ --verbose ] files/directories...

All files are modified in-place. You may want to review & rename them to the .mjs extension, if using Node 14 or later. Un-converted files should use the .cjs extension.

Examples:

cjs-to-es6 index.js             # convert a single file
cjs-to-es6 lib/                 # convert all files in a directory & its subdirectories (.js & .cjs)
cjs-to-es6 foo.js bar.js lib/   # convert many files/directories