Gerador de ESLintrc
Este gerador cria uma configuração .eslintrc.json pronta para uso a partir de quatro escolhas: ambiente de navegador ou Node, suporte a TypeScript e suporte a React. Ele conecta eslint:recommended, os plugins de TypeScript ou React correspondentes e algumas substituições de regras sensatas, para você colar o resultado no seu projeto.
Como gerar uma configuração ESLint
-
1
Escolha o ambiente
Indique se o código roda no navegador, no Node.js ou em ambos. O gerador define as entradas `env` correspondentes, além de `es2022`.
-
2
Ative o TypeScript
Marque TypeScript e o gerador adiciona `@typescript-eslint/parser` e o plugin TypeScript recomendado.
-
3
Ative o React
Marque React e o gerador adiciona `eslint-plugin-react` com o preset recomendado.
-
4
Gerar
Clique no botão e a configuração é criada como JSON bem formatado.
-
5
Copie para o seu projeto
Cole o resultado em `.eslintrc.json` e instale os plugins que ele referencia.
O que a configuração gerada contém
O gerador sempre parte de eslint:recommended e adiciona exatamente o que as suas seleções implicam:
envcombrowsere/ounode, além dees2022@typescript-eslint/parsereplugin:@typescript-eslint/recommendedquando o TypeScript está ativadoplugin:react/recommendedquando o React está ativadono-consoleeno-unused-varsdefinidas comowarn
O resultado é um objeto JSON simples no formato clássico de .eslintrc.json, pronto para colar e ampliar com suas próprias regras.
Configuração plana vs legada
O ESLint 9 descontinuou o formato .eslintrc.* em favor da configuração plana (eslint.config.js). Principais diferenças:
| Aspecto | Legado (.eslintrc) | Plana (eslint.config.js) |
|---|---|---|
| Formato | JSON, YAML ou CommonJS | Módulo JavaScript ESM ou CommonJS |
| Extende | extends: ["plugin:react/recommended"] |
Espalhado em array: ...reactPlugin.configs.recommended |
| Substituições | Array overrides com padrões glob |
Múltiplos objetos no array exportado |
| Globais | env: { browser: true } |
languageOptions.globals com imports explícitos |
| Ignora | Arquivo .eslintignore |
Campo ignores no array de configuração |
Novos projetos devem usar configuração plana. Projetos existentes podem permanecer no legado através da linha 10.x, mas a migração é recomendada.
Ecossistema de plugins
Plugins típicos de projetos React/TS:
@typescript-eslint/eslint-plugin
@typescript-eslint/parser
eslint-plugin-react
eslint-plugin-react-hooks
eslint-plugin-jsx-a11y
eslint-plugin-import
eslint-config-prettier
Isso são seis pacotes para uma configuração moderadamente opinativa. O gerador adiciona os que você seleciona, então você instala apenas o que a configuração referencia.
Coexistência com Prettier
Prettier lida com formatação; ESLint lida com correção e estilo além da formatação. Para evitar conflitos:
- Instale
eslint-config-prettiere adicione-o como o ÚLTIMO item em suas extensões/configuração. - Ele desativa todas as regras do ESLint que entram em conflito com a saída do Prettier.
- Execute o Prettier separadamente (ao salvar no editor, no hook de pré-commit, no CI).
Não use eslint-plugin-prettier em novos projetos; isso desacelera o ESLint ao executar o Prettier dentro do ESLint. Separe as duas ferramentas.
Dicas para ajuste de regras
- Comece solto, ajuste para mais rigor. Ative avisos antes de erros.
- Substitua para testes. Arquivos de teste frequentemente precisam de
no-unused-expressionsrelaxado e globais do Jest disponíveis. - Substitua para scripts. Scripts de construção podem precisar de globais do Node sem adicionar
env: nodeglobalmente. - Documente substituições. Cada substituição de regra merece um comentário explicando o porquê.
Configuração que combina com seu editor
O VS Code precisa da extensão ESLint instalada e configurada. Adicione estas configurações ao seu workspace para correção automática ao salvar:
{
"editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit" },
"eslint.validate": ["javascript", "typescript", "javascriptreact", "typescriptreact"]
}
Perguntas frequentes
Para novos projetos, configuração plana (eslint.config.js). Este gerador emite o formato clássico .eslintrc.json, que o ESLint lê nativamente em modo legado; a tabela de comparação acima mostra o que muda se você migrar depois.
Sim, se você estiver usando TypeScript. O @typescript-eslint/parser e o @typescript-eslint/eslint-plugin habilitam a verificação de linting ciente de TypeScript. Para regras cientes de tipo (não apenas sintaxe), também configure o parser com project: './tsconfig.json'.
Geralmente, faltando dependências de desenvolvimento no CI. Certifique-se de que @typescript-eslint/*, plugins e a versão do ESLint correspondam entre local e CI. Use npm ci (não npm install) no CI para respeitar o lockfile.
Não. Suas seleções servem apenas para gerar a configuração; elas não são armazenadas nem compartilhadas com terceiros.
Ferramentas relacionadas
Gerador de Cartão CSS
Crie o CSS de um contêiner de cartão: fundo, borda, raio dos cantos, espaçamento interno e sombra suave, com pré-visualização imediata e código para copiar e colar.
Conversor de Tamanho de Arquivo
Converta entre bytes, KB, MB, GB, TB e as unidades binárias IEC (KiB, MiB, GiB, TiB), combinando decimal e binário como preferir.
Gerador de Docker Compose
Gere um docker-compose.yml a partir de definições de serviços com imagem, portas e volumes, com padrões de boas práticas.
Conversor de base numérica
Converta números entre binário, octal, decimal, hexadecimal e qualquer base personalizada de 2 a 36, com o detalhamento posicional.
Visualizador de Markdown
Escreva Markdown e veja a renderização HTML atualizar ao vivo. Sintaxe com estilo GitHub, incluindo tabelas, listas de tarefas, blocos de código cercados e autolinks.
Gerador de Configuração Nginx
Gere blocos de servidor Nginx com TLS, HTTP/2, gzip, cache de navegador e regras de proxy reverso a partir de um formulário simples.
Ferramenta disponível em outros idiomas
- ESLintrc 생성기 [KO]
- ESLintrc-generator [SV]
- ESLintrc-generator [NL]
- Generator .eslintrc [PL]
- ESLintrc-Generator [DE]
- เครื่องสร้าง ESLintrc [TH]
- Generador de ESLintrc [ES]
- Generator ESLintrc [ID]
- مولد ESLintrc [AR]
- Générateur d'ESLintrc [FR]
- ESLintrc ジェネレーター [JA]
- Bộ tạo ESLintrc [VI]
- ESLintrc Generator [EN]
- Generatore ESLintrc [IT]
- Генератор ESLintrc [RU]
- ESLintrc Üreticisi [TR]
- ESLintrc生成器 [ZH]