
Biome est un outil de linting et de formatting JavaScript et TypeScript écrit en Rust, qui remplace simultanément ESLint et Prettier par un seul binaire, une seule configuration, et une vitesse 10 à 25 fois supérieure. Biome est né en 2023 de la communauté open-source après la fermeture de Rome Tools — le projet ambitieux de Sebastian McKenzie, créateur de Babel et Yarn. Biome 1.0 est sorti en août 2023, Biome 2.0 en mars 2025 avec le linting type-aware et le système de plugins. La version courante en 2026 est Biome v2.3, avec 1,5 million de téléchargements hebdomadaires npm et 423 règles de linting disponibles.
Pourquoi ESLint et Prettier posent problème dans les projets modernes ?
Le combo ESLint + Prettier est le standard JavaScript depuis des années. Il est fiable, flexible, et bénéficie d'un écosystème de plus de 4 000 plugins. Mais ce même écosystème est aussi sa principale source de friction. Une configuration ESLint mature dans un projet TypeScript+React accumule rapidement des dizaines de plugins : `@typescript-eslint`, `eslint-plugin-react`, `eslint-plugin-react-hooks`, `eslint-plugin-import`, `eslint-plugin-jsx-a11y`, parfois des règles custom pour un monorepo. Chaque plugin ajoute des dépendances, des risques de conflits de versions, et une charge de maintenance. Prettier, de son côté, ajoute une deuxième couche de configuration et crée parfois des conflits avec certaines règles ESLint. Sur un projet de 10 000 fichiers, ESLint + Prettier peut prendre 45 secondes à s'exécuter en CI. Biome analyse les mêmes 10 000 fichiers en 0,8 seconde.
Comment Biome fonctionne-t-il et pourquoi est-il aussi rapide ?
La vitesse de Biome tient à deux facteurs structurels. Biome est écrit en Rust, qui compile vers du code natif et exploite nativement le multi-threading sur tous les cœurs disponibles — là où ESLint est mono-threadé par défaut. Biome utilise une architecture one-parse, multiple-passes : le code source est parsé une seule fois en un AST (Abstract Syntax Tree), qui est ensuite réutilisé pour le linting et le formatting simultanément. ESLint et Prettier parsent le code indépendamment, ce qui double le travail. Biome n'a aucune dépendance npm — il s'installe comme un binaire unique. Là où la combinaison ESLint + Prettier typique installe 127+ paquets npm, Biome en installe un seul.
Quelles sont les fonctionnalités de Biome en 2026 ?
Biome v2.3 couvre un périmètre très large pour un outil de sa jeunesse :
- 423 règles de linting JavaScript et TypeScript, dont les plus importantes d'ESLint et @typescript-eslint
- Formatting Prettier-compatible — la sortie de Biome est quasi-identique à Prettier, ce qui facilite la migration
- Linting type-aware depuis Biome 2.0 — détection des bugs liés aux types sans nécessiter le compilateur TypeScript complet
- Support CSS avec des règles issues de stylelint-config-recommended
- Système de plugins depuis Biome 2.0 pour les règles custom
- Intégration native avec VS Code, JetBrains, Neovim et les pipelines CI
- Configuration unifiée dans un seul fichier `biome.json` au lieu de `.eslintrc`, `.prettierrc`, et leurs dérivés
Biome est-il prêt pour remplacer ESLint en production ?
La réponse dépend du projet. Pour les nouveaux projets JavaScript ou TypeScript qui n'ont pas encore de configuration ESLint établie, Biome est le choix le plus sensé en 2026 : plus rapide, plus simple, zéro configuration de départ. Pour les projets existants, la question centrale est celle des plugins ESLint custom. Biome couvre l'essentiel des règles courantes, mais si un projet dépend de plugins très spécifiques — règles d'accessibilité avancées, règles de sécurité, plugins propriétaires — ESLint reste nécessaire pour ces cas. Une approche hybride est fréquente en 2026 : Biome pour le formatting et le linting général, ESLint uniquement pour les plugins sans équivalent dans Biome. ESLint reste dominant à 50 millions de téléchargements hebdomadaires, mais Biome gagne du terrain à 1,5 million de téléchargements, en croissance constante.
Comment migrer de ESLint + Prettier vers Biome ?
Biome fournit un outil de migration officiel qui lit la configuration ESLint existante et génère automatiquement un fichier `biome.json` équivalent. L'installation se fait via npm : `npm install --save-dev --save-exact @biomejs/biome`, suivie de l'initialisation de la config avec `npx @biomejs/biome init`. La commande `npx @biomejs/biome migrate eslint --write` transforme la configuration ESLint existante. Biome peut être introduit progressivement dans un projet — il est possible de le faire tourner uniquement sur les fichiers nouveaux ou modifiés pendant une période de transition, avant de l'appliquer à l'ensemble du codebase. Le projet est open-source, actif, et disponible sur GitHub sous licence MIT + Apache 2.0.