L'essor d'ESM-Only : L'écosystème JavaScript est-il prêt ?

2025-03-24
L'essor d'ESM-Only : L'écosystème JavaScript est-il prêt ?

Cet article explore l'état actuel de l'adoption d'ESM (ECMAScript Module) dans l'écosystème JavaScript et plaide pour une transition vers des paquets ESM uniquement. L'auteur revient sur un article précédent préconisant les formats doubles CJS/ESM et explique le passage à ESM uniquement. L'essor d'outils de construction modernes comme Vite et de frameworks comme Nuxt et SvelteKit a fait d'ESM le système de modules dominant. La prise en charge par Node.js de `require()` pour les modules ESM supprime encore plus d'obstacles à l'interopérabilité. Bien que les paquets doubles CJS/ESM aient servi de mécanisme de transition, ils introduisent une surcharge de maintenance importante et des problèmes d'interopérabilité. L'auteur recommande ESM uniquement pour les nouveaux projets et fournit des conseils pour différents types de projets (navigateur, CLI). Un nouvel outil, Node Modules Inspector, est introduit pour aider à analyser l'adoption d'ESM dans les dépendances du projet.

Développement Modules JavaScript