babel-plugin-transform-es2015-modules-commonjs weekly downloads statistics
By babel (204 listings) · npm · Babel plugins
This plugin transforms ES2015 modules to CommonJS
babel-plugin-transform-es2015-modules-commonjs has 741,854 recorded weekly downloads on npm, a decrease of 54.8% over the past 30 days.
It ranks #205 of 2,251 tracked npm listings by weekly downloads.
Over 90 days, weekly downloads changed by -60.1%.
PluginStats has 543 daily observations since Apr 23, 2025; the latest is from Oct 17, 2026.
About babel-plugin-transform-es2015-modules-commonjs
babel-plugin-transform-es2015-modules-commonjs
This plugin transforms ES2015 modules to CommonJS.
#### Babel 6 Changes
Babel 6 changed some behavior by not doing module.exports = exports['default'] anymore in the modules transforms.
There are some caveats, but you can use babel-plugin-add-module-exports, so that updating to Babel 6 isn't a breaking change since users that don't use ES modules don't have to do require("your-module").default.
However, it may not match how Node eventually implements ES modules natively given the the current proposal.
Example
In
Out
Installation
Usage
Via .babelrc (Recommended)
.babelrc
Via CLI
Via Node API
Options
loose
boolean, defaults to false.
As per the spec, import and export are only allowed to be used at the top level. When in loose mode these are allowed to be used anywhere.
And by default, when using exports with babel a non-enumerable __esModule property is exported.
In environments that don't support this you can enable loose mode on babel-plugin-transform-es2015-modules-commonjs and instead of using Object.defineProperty an assignment will be used instead.
strict
boolean, defaults to false
By default, when using exports with babel a non-enumerable __esModule property is exported. In some cases this property is used to determine if the import _is_ the default export or if it _contains_ the default export.
In order to prevent the __esModule property from being exported, you can set the strict option to true.
noInterop
boolean, defaults to false
By default, when using exports with babel a non-enumerable __esModule property is exported. This property is then used to determine if the import _is_ the default export or if it _contains_ the default export.
In cases where the auto-unwrapping of default is not needed, you can set the noInterop option to true to avoid the usage of the interopRequireDefault helper (shown in inline form above).
Description from the npm listing.
- babel-plugin
Where babel-plugin-transform-es2015-modules-commonjs sits in the listing
Each band is one page of 20. Weekly downloads on a log scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Recent observations
Full history (543)Similar npm Babel plugins plugins
Data source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/babel-plugin-transform-es2015-modules-commonjs. First seen Oct 16, 2026; last successful collection Oct 18, 2026. See the methodology.