Skip to main content

O que é o @abacatepay/eslint-plugin?

O @abacatepay/eslint-plugin é um plugin de segurança para ESLint que evita o vazamento acidental de API keys da AbacatePay diretamente no código-fonte. Ele detecta chaves secretas hardcoded em qualquer contexto (strings, headers, JSX, templates, configs, etc.) e incentiva o uso correto de variáveis de ambiente, antes que o problema chegue ao repositório ou à produção.

Por que isso importa?

  • Vazamento de API keys é um dos erros mais comuns em projetos
  • Linters pegam o problema antes do commit
  • Segurança como padrão, sem depender de code review

Instalação

Use o package manager da sua preferência:

Configuração

ESLint v9+ (Flat Config) O plugin foi projetado exclusivamente para ESLint v9+, utilizando o novo formato de flat config.

Regras Disponíveis

abacatepay/no-secret-key Impede o uso de chaves secretas da AbacatePay diretamente no código, independentemente do contexto:
  • Strings literais
  • Headers HTTP
  • JSX / props
  • Templates
  • Configurações de clientes

Comportamento da regra

A regra não aplica autofix destrutivo. Sempre que possível, ela oferece sugestões seguras para substituição.

Sugestões Automáticas

Quando detecta uma chave hardcoded, a regra sugere automaticamente o uso de variáveis de ambiente:

Exemplos de Uso Incorreto

Segurança por Design

Preventivo

O erro é detectado antes do commit ou deploy.

Baixo ruído

Apenas casos reais de risco são reportados.

Recursos Relacionados

@abacatepay/rest

Cliente REST oficial para a API da AbacatePay.

SDKs Oficiais

Integrações de alto nível para diversas linguagens.

Open source, de verdade

O @abacatepay/eslint-plugin é open source e mantido pela equipe AbacatePay. Contribuições e sugestões são bem-vindas.