ESLint vs Biome: qual linter para CI?
O Biome é um toolchain Rust rápido e all-in-one; o ESLint é o padrão extensível com um vasto ecossistema de regras e plugins.
O ESLint é o linter JavaScript/TypeScript consolidado, com milhares de regras e plugins da comunidade. O Biome é um toolchain baseado em Rust que faz lint e formata em um único binário rápido.
| ESLint | Biome | |
|---|---|---|
| Velocidade | Mais lento (JS, overhead de plugins) | Muito rápido (Rust) |
| Ecossistema de regras / plugins | Enorme | Menor, em crescimento |
| Formatação | Separada (Prettier) | Embutida |
| Config | Flexível, pode se espalhar | Mínima, opinativa |
| Setup | Mais partes móveis | Binário único |
No CI
O Biome roda muito mais rápido e reúne linting e formatação em uma única ferramenta, o que simplifica e acelera o pipeline. O ESLint vence na cobertura: se você depende de plugins específicos (regras de framework, acessibilidade, ordenação de imports, regras customizadas), o ESLint ainda os tem e o Biome talvez não. Algumas equipes rodam o Biome pela velocidade e mantêm o ESLint apenas para regras que o Biome não tem.
Esforço de migração
O Biome cobre muitas regras comuns do ESLint, mas não todas. Audite seus plugins e regras ativados antes de trocar; espere manter uma pequena config do ESLint para qualquer coisa que o Biome ainda não consiga aplicar.
O veredito
Quer lint+format rápido com config mínima e suas regras estão cobertas: Biome. Depende de um amplo ecossistema de plugins do ESLint: fique no ESLint (ou rode os dois). Verifique a cobertura de regras antes de migrar.