Arquivos .mjs são arquivos de código-fonte JavaScript usados como módulos ECMAScript. Eles são projetados para serem utilizados em ambientes JavaScript modernos, particularmente no Node.js e em navegadores web que suportam módulos ES. Diferentemente dos arquivos JavaScript tradicionais (com a extensão .js), os arquivos .mjs são sempre analisados (parsed) como módulos, o que impõe regras de análise mais rigorosas e habilita funcionalidades como as declarações import e export para gerenciar dependências e a organização do código. Essa abordagem modular promove a reutilização de código, a manutenibilidade e um melhor encapsulamento. Arquivos .mjs são tipicamente empregados na criação de componentes reutilizáveis, bibliotecas e aplicações complexas onde a modularidade é essencial. Frequentemente, são utilizados em conjunto com ferramentas de build como Webpack, Parcel ou Rollup para empacotar (bundle) e otimizar o código para implantação. O uso de arquivos .mjs ajuda a evitar conflitos de nomenclatura e a poluição do escopo global, resultando em aplicações JavaScript mais robustas e previsíveis.