Skip to content

Oxlint Beta

Este post anuncia o Oxlint em beta. O Oxlint já chegou ao v1.0 estável! Veja Oxlint v1.0 Stable para recursos e melhorias atuais.

Temos o prazer de anunciar que o Oxlint entrou em beta após mais de um ano de trabalho da comunidade!

É um passo importante em funcionalidades, desempenho e estabilidade.

Como usar

Nesta fase o Oxlint pode substituir totalmente o ESLint em projetos pequenos e médios.

Em bases grandes recomendamos desativar no ESLint as regras cobertas com eslint-plugin-oxlint e rodar o Oxlint antes do ESLint (localmente ou na CI) para feedback mais rápido.

Para testar, na raiz do projeto, com qualquer gerenciador:

sh
$ npx oxlint@latest
sh
$ pnpm dlx oxlint@latest
sh
$ yarn dlx oxlint@latest
sh
$ bunx oxlint@latest
sh
$ deno run npm:oxlint@latest

Mais detalhes em guia de instalação.

Principais novidades desde o GA

  • Ganho grande de desempenho — até mais rápido que o release anterior
  • Mais de 500 regras sem instalar plugins extras
  • Muitas regras dos plugins typescript, unicorn, react, react-perf, nextjs, import, jsdoc, jsx-a11y, node, promise, jest, vitest implementadas de ponta a ponta
  • Configuração via arquivos .oxlintrc.json, com configs aninhados, extends, overrides e mais
  • Lint do conteúdo de <script> em .astro, .svelte e .vue sem config extra
  • Correções automáticas e sugestões em lote

Mais regras, mais velocidade

Queremos o Oxlint completo, com muitas regras e plugins comuns do ESLint, e ainda bem mais rápido.

No primeiro anúncio de GA do Oxlint havia 205 regras, 70 ligadas por padrão. Na beta são 502 regras, 99 por padrão (+41% nas regras padrão).

Tipo de regraQuantidade (GA)Quantidade (beta)Crescimento
Padrão7099+29 regras
Correctness88173+88 regras
Performance09+9 regras
Restrictions1564+49 regras
Pedantic4379+36 regras
Style38137+99 regras
Suspicious728+21 regras
Total205502+297 regras

Mesmo com mais regras padrão, o Oxlint está mais rápido que nunca. Abaixo, benchmarks em repositórios conhecidos:

RepositórioArquivosTempo (GA)Tempo (beta)Aceleração
elastic/kibana68 5916,02 s3,11 s1,94×
microsoft/vscode5 7031,697 s0,792 s2,14×
vitest-dev/vitest1 732105 ms50 ms2,1×
vuejs/core1 063217 ms89 ms2,44×

Roteiro

Um dos pedidos mais frequentes é suportar plugins ESLint customizados. Estamos preparando a base para isso e para plugins JS rápidos no Oxlint. Esperamos incluir no próximo major e compartilhar detalhes em breve.

Também vamos melhorar integrações com IDE: VS Code, Zed, coc.nvim e plugins IntelliJ.

Agradecimentos

A beta do Oxlint não existiria sem mais de 200 contribuidores.

Em especial: