gtf-eslint
v1.0.6
Published
Configurações otimizadas do ESLint para projetos React e Node.js com TypeScript, seguindo os mais recentes padrões do typescript-eslint.
Readme
GTF ESLint Config
Configurações otimizadas do ESLint para projetos React e Node.js com TypeScript, seguindo os mais recentes padrões do typescript-eslint.
🚀 Características
- Linting com Type Information: Configuração completa com
projectService: truepara análise estática avançada - Configurações separadas: React (TSX) e Node.js com regras específicas para cada ambiente
- Regras modernas: Inclui todas as configurações recomendadas, strict e stylistic do typescript-eslint
- Integração Prettier: Configuração otimizada para formatação consistente
- Suporte React: Regras específicas para React Hooks, Refresh e DOM
- Performance otimizada: Usa
projectServiceem vez deprojectpara melhor performance
📦 Instalação
pnpm add -D gtf-eslint🔧 Uso
Para projetos React
// eslint.config.js
import reactConfig from 'gtf-eslint/react';
export default reactConfig;Para projetos Node.js
// eslint.config.js
import nodeConfig from 'gtf-eslint/node';
export default nodeConfig;⚡ Principais Melhorias Implementadas
1. Linting com Type Information
- Substituído
projectporprojectService: truepara melhor performance - Configurações
recommendedTypeChecked,strictTypeCheckedestylisticTypeChecked - Análise estática completa com informações de tipos do TypeScript
2. Configurações Separadas por Tipo de Arquivo
- TypeScript/TSX: Linting completo com type checking
- JavaScript/JSX: Linting sem type checking para compatibilidade
- Configurações específicas: React para frontend, Node.js para backend
3. Regras Avançadas do TypeScript
@typescript-eslint/prefer-nullish-coalescing: Força uso de??em vez de||@typescript-eslint/prefer-optional-chain: Força uso de?.para acesso seguro@typescript-eslint/consistent-type-imports: Imports de tipos consistentes@typescript-eslint/no-unnecessary-condition: Detecta condições desnecessárias
4. Configurações de Estilo
- React:
printWidth: 120,semi: false(padrão React) - Node.js:
printWidth: 80,semi: true(padrão Node.js) - Integração com
prettier-plugin-tailwindcsspara React
5. Performance e Compatibilidade
projectService: truepara melhor performance em projetos grandes- Suporte para arquivos
.mjse.js - Configurações específicas para diferentes ambientes
📋 Regras Principais
TypeScript (Com Type Checking)
- Análise estática completa de tipos
- Detecção de uso inseguro de
any - Verificação de condições desnecessárias
- Imports e exports de tipos consistentes
React
- Regras para React Hooks
- Fast Refresh para desenvolvimento
- Regras específicas para JSX/TSX
- Integração com React DOM
Node.js
- Regras específicas para ambiente Node.js
- Prevenção de operações síncronas bloqueantes
- Verificação de paths seguros
🔍 Troubleshooting
Erro de Type Information
Se você receber erros sobre type information, verifique se:
- Seu
tsconfig.jsonestá configurado corretamente - O
tsconfigRootDirestá apontando para o diretório correto - Todas as dependências do TypeScript estão instaladas
Performance
projectService: trueé mais rápido queprojectpara projetos grandes- O linting tipado pode ser mais lento inicialmente, mas oferece análises mais profundas
- Use em IDEs para melhor experiência de desenvolvimento
📚 Referências
🤝 Contribuição
Contribuições são bem-vindas! Por favor, abra uma issue ou pull request para melhorias.
📄 Licença
ISC
