esm-config

raw JSON →
1.1.0 verified Mon Apr 27 auth: no javascript

esm-config is a utility (v1.1.0) that transforms ES module configuration files to CommonJS using Rollup. It allows projects to use import/export syntax in config files (e.g., rollup.config.js, webpack.config.js) without Node.js native ESM support. The package has no release cadence; it's a small library that relies on a modified version of Rollup's internal loadConfigFile function. Compared to alternatives like @babel/register or esm, it focuses specifically on config loading and integrates Rollup's bundling.

error Error: Cannot find module 'rollup'
cause Missing peer dependency rollup.
fix
npm install rollup@^1.17.0
error TypeError: esmConfig is not a function
cause Incorrect import using ES module syntax instead of require.
fix
Use const esmConfig = require('esm-config')
gotcha require('esm-config') returns a function, not an object with named exports.
fix Use const esmConfig = require('esm-config') directly.
deprecated The package uses rollup internally; ensure rollup peer dependency is installed.
fix npm install rollup@^1.17.0 --save-dev
npm install esm-config
yarn add esm-config
pnpm add esm-config

Loads an ES module config file and transforms it to CJS for use in Node.js.

const esmConfig = require('esm-config');
const config = esmConfig('/path/to/config.js');
console.log(config);