.mjs is used to denote a ES Module Javascript file, separating it from .js which typically contains a CommonJS, AMD or direct browser code. .mjs is increasingly being used to deliver ESM files over the web, not just for package builders, through the use of import maps.