The only problem are &quot;default exports&quot;, i.e. overriding  `module.exports` directly. In Node the exported names are just properties of the `module.exports` object but in ES6 the named exports are entirely separate from the default export. IIRC module.exports was not actually part of CommonJS although nowadays most people just use that word to mean &quot;whatever Node does&quot;.