eslint typescript: Guia Completo para Configuração e Boas Práticas

eslint typescript: Guia Completo para Configuração e Boas Práticas

Como especialista em desenvolvimento de software com mais de 10 anos de experiência, posso afirmar: configurar o eslint typescript da forma correta transforma a qualidade do código. Além disso, melhora a produtividade e evita horas de retrabalho. A princípio, pode parecer complexo, mas, sobretudo, é um processo essencial para qualquer time que queira evoluir com segurança.

1
Samsung Galaxy A55 5G, Câmera Tripla Traseira de até 50MP, Selfie de 32MP, Nightography, Apagador de objetos, Design em metal e vidro, IP67, Super AMOLED 6.6" 120Hz Vision Booster, 128GB - Azul Claro
Samsung Galaxy A55 5G, Câmera Tripla Traseira de até 50MP, Selfie de 32MP, Nightography, Apagador de objetos, Design em metal e vidro, IP67, Super AMOLED...
9.9
Amazon.com.br
2
Samsung Galaxy A55 5G, Câmera Tripla Traseira de até 50MP, Selfie de 32MP, Nightography, Apagador de objetos, Design em metal e vidro, IP67, Super AMOLED 6.6" 120Hz Vision Booster, 128GB - Azul Escuro
Samsung Galaxy A55 5G, Câmera Tripla Traseira de até 50MP, Selfie de 32MP, Nightography, Apagador de objetos, Design em metal e vidro, IP67, Super AMOLED...
9.8
Amazon.com.br
3
Smartphone Samsung Galaxy A56 5G 128GB, 8GB RAM, Câmera 50MP, IP67, Super AMOLED 6.7", Recursos AI, Preto
Smartphone Samsung Galaxy A56 5G 128GB, 8GB RAM, Câmera 50MP, IP67, Super AMOLED 6.7", Recursos AI, Preto
9.7
Amazon.com.br

O que é ESLint?

Em primeiro lugar, precisamos entender que o ESLint é uma ferramenta de análise estática de código. Ou seja, ele examina o código sem executá-lo. Principalmente, ele identifica padrões problemáticos, más práticas e violações de estilo.

Por que usar ESLint com TypeScript?

Antes de tudo, o TypeScript adiciona tipagem estática ao JavaScript, elevando o nível de segurança e robustez. Contudo, sem uma ferramenta como o ESLint, muitos problemas podem passar despercebidos. Ou seja, o eslint typescript se torna indispensável.

Além disso, o ESLint com TypeScript permite:

  • Identificar erros rapidamente.
  • Garantir a padronização do código.
  • Integrar com Prettier para formatação automática.
  • Evitar bugs antes mesmo da execução.

Como o ESLint se tornou referência?

Acima de tudo, o ESLint se popularizou por ser altamente configurável. Atualmente, ele é um dos linters mais usados no mundo, com milhões de downloads mensais no npm. Juntamente com o TypeScript, cria uma combinação poderosa para desenvolvimento front-end e back-end.

Instalação do ESLint para TypeScript

Primeiramente, vamos à instalação. O processo é simples, mas requer atenção aos detalhes.

bashCopiarEditarnpm install eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin --save-dev

Além disso, é recomendável instalar o typescript no projeto, caso ainda não esteja.

bashCopiarEditarnpm install typescript --save-dev

Configurando o ESLint para TypeScript

A princípio, é necessário criar um arquivo de configuração .eslintrc.json ou .eslintrc.js. Nesse sentido, veja um exemplo básico de configuração:

jsonCopiarEditar{
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "project": "./tsconfig.json",
    "sourceType": "module"
  },
  "plugins": ["@typescript-eslint"],
  "extends": [
    "eslint:recommended",
    "plugin:@typescript-eslint/recommended"
  ],
  "rules": {
    "semi": ["error", "always"],
    "quotes": ["error", "single"]
  }
}

Explicando cada parte da configuração

Antes de mais nada, vamos entender o que cada item faz:

  • parser: Define o parser do TypeScript.
  • parserOptions: Configurações específicas, como apontar para o tsconfig.json.
  • plugins: Indica o uso do plugin do TypeScript.
  • extends: Conjuntos de regras padrão.
  • rules: Regras personalizadas, ajustadas conforme o estilo do time.

Principais extensões para ESLint e TypeScript

Além disso, algumas extensões ajudam a potencializar ainda mais o uso do eslint typescript:

  • eslint-plugin-import: Gerencia importações.
  • eslint-plugin-unused-imports: Remove imports não utilizados.
  • eslint-plugin-prettier: Integração direta com o Prettier.

Integrando ESLint com Prettier

Em outras palavras, o Prettier se encarrega da formatação, enquanto o ESLint cuida da qualidade. Para integrá-los:

bashCopiarEditarnpm install --save-dev prettier eslint-config-prettier eslint-plugin-prettier

Depois, no .eslintrc.json:

jsonCopiarEditar"extends": [
  "plugin:@typescript-eslint/recommended",
  "plugin:prettier/recommended"
]

Rodando o ESLint com TypeScript

Primeiramente, é preciso adicionar um script no package.json:

jsonCopiarEditar"scripts": {
  "lint": "eslint . --ext .ts,.tsx"
}

Depois, basta rodar:

bashCopiarEditarnpm run lint

Ou, se preferir, diretamente:

bashCopiarEditarnpx eslint . --ext .ts,.tsx

Boas práticas ao usar ESLint com TypeScript

Sobretudo, algumas boas práticas são indispensáveis ao usar o eslint typescript:

  • Sempre manter o tsconfig.json atualizado.
  • Revisar e adaptar as regras conforme o estilo do time.
  • Automatizar o linting com pre-commit hooks, usando ferramentas como Husky.
  • Integrar o ESLint ao editor, como VSCode.

Automatizando o lint com Husky

A princípio, Husky permite adicionar hooks de Git facilmente. Para isso:

bashCopiarEditarnpm install husky --save-dev
npx husky install
npx husky add .husky/pre-commit "npm run lint"

Assim, sempre que for realizar um commit, o ESLint será executado automaticamente.

Lidando com erros comuns no eslint typescript

Apesar disso, alguns erros são comuns e precisam de atenção:

  • Parsing error: “parserOptions.project” has been set for @typescript-eslint/parser: Esse erro ocorre quando o caminho para o tsconfig.json está incorreto.
  • Missing file extension “ts” for import: Pode ser resolvido adicionando "moduleResolution": "node" no tsconfig.json.

Quando desabilitar regras do ESLint?

Em determinadas situações, pode ser necessário desabilitar algumas regras. Porém, deve ser feito com cautela. Por exemplo:

typescriptCopiarEditar// eslint-disable-next-line @typescript-eslint/no-explicit-any
function log(value: any) {
  console.log(value);
}

Todavia, é importante evitar o uso indiscriminado dessas diretivas.

O impacto do ESLint na qualidade do código

Primordialmente, o eslint typescript não só melhora o código, mas também previne problemas de manutenção a longo prazo. Além disso, ajuda a:

  • Padronizar estilos.
  • Evitar erros comuns.
  • Facilitar revisões de código (code review).

Melhores configurações de regras para projetos TypeScript

Nesse sentido, algumas regras são praticamente essenciais:

  • @typescript-eslint/explicit-function-return-type: Exige a tipagem explícita.
  • @typescript-eslint/no-unused-vars: Evita variáveis não utilizadas.
  • @typescript-eslint/no-explicit-any: Desencoraja o uso do any.

Mantendo o ESLint sempre atualizado

Principalmente, é importante manter o ESLint e seus plugins sempre atualizados para aproveitar melhorias de performance e novas regras. Para isso, basta usar:

bashCopiarEditarnpm outdated
npm update

Como o eslint typescript melhora a colaboração em equipe

Do mesmo modo, o ESLint melhora significativamente o trabalho em equipe. Afinal, todos seguem um mesmo padrão, evitando divergências e conflitos desnecessários durante o desenvolvimento.

Casos de uso comuns

Por exemplo, o eslint typescript é amplamente usado em:

  • Projetos com React e TypeScript.
  • Back-end com Node.js.
  • Desenvolvimento de bibliotecas compartilhadas.
  • Monorepos com múltiplos pacotes.

Alternativas ao ESLint

Contudo, existem algumas alternativas, como:

  • TSLint (obsoleto desde 2019).
  • SonarLint.
  • StandardJS (menos flexível).

Apesar disso, nenhuma alternativa tem a robustez e a flexibilidade do ESLint.

Minhas Impressões Pessoais

Pessoalmente, considero o eslint typescript uma ferramenta indispensável. Ele eleva a qualidade do código, facilita o trabalho em equipe e previne erros de forma proativa. É, sem dúvida, uma das melhores práticas que adotei na minha carreira.

Conclusão

Portanto, dominar o eslint typescript é um passo fundamental para quem quer evoluir no desenvolvimento com TypeScript. Assim, aplicar essas boas práticas e configurações vai garantir não só um código mais limpo, mas também mais seguro e de fácil manutenção. Desse modo, sua produtividade e a qualidade do projeto vão alcançar outro nível. Por fim, invista tempo na configuração e veja os resultados no dia a dia!

Samsung Galaxy A55 5G, Câmera Tripla Traseira de até 50MP, Selfie de 32MP, Nightography, Apagador de objetos, Design em metal e vidro, IP67, Super AMOLED...

R$ 2.790,00
em estoque
Amazon.com.br
Preço atualizado na Amazon: 30/06/2025 06:29

Samsung Galaxy A55 5G, Câmera Tripla Traseira de até 50MP, Selfie de 32MP, Nightography, Apagador de objetos, Design em metal e vidro, IP67, Super AMOLED...

R$ 2.009,26
PRIMEPRIME
em estoque
Amazon.com.br
Preço atualizado na Amazon: 30/06/2025 06:29

Smartphone Samsung Galaxy A56 5G 128GB, 8GB RAM, Câmera 50MP, IP67, Super AMOLED 6.7", Recursos AI, Preto

R$ 2.139,90
PRIMEPRIME
em estoque
Amazon.com.br
Preço atualizado na Amazon: 30/06/2025 06:29
eslint typescript: Guia Completo para Configuração e Boas Práticas

Perguntas Frequentes (FAQ)

O que é o ESLint e para que serve?

O ESLint é uma ferramenta de linting para JavaScript e TypeScript que ajuda a encontrar e corrigir problemas de código, garantindo que o código siga padrões de qualidade.

Como configurar o ESLint com TypeScript?

Para configurar, você precisa instalar o ESLint e o parser do TypeScript, criar um arquivo de configuração (.eslintrc) e ajustar as regras conforme sua necessidade.

Quais são os benefícios de usar ESLint com TypeScript?

Usar ESLint com TypeScript melhora a qualidade do código, evita bugs e facilita a manutenção, além de garantir que você siga as melhores práticas de programação.

Prof. Eduardo Henrique Gomes
Prof. Eduardo Henrique Gomes

Apaixonado por tecnologia e análise de gadgets, trazendo reviews e insights para a Web Academy.