Pontos-chave
- O Hardhat organiza o desenvolvimento, os testes e o deploy de contratos EVM.
- Os scripts e a configuração de rede permitem preparar deploys reproduzíveis.
- Pode ser combinado com o Foundry quando o projeto precisa de fluxos de teste diferentes.
O que é Hardhat?
O Hardhat organiza o desenvolvimento, os testes e a implantação de contratos EVM. Reúne configuração do compilador, redes e extensões para que uma equipe possa repetir o mesmo fluxo localmente e em integração contínua. Sua utilidade não termina ao compilar: também ajuda a relacionar código, artefatos e operações de implantação.
O Hardhat 3 admite testes em Solidity e TypeScript, com integrações para ferramentas como Viem ou Ethers. A seleção de plugins e do ambiente de testes deve corresponder à versão do projeto, evitando misturar instruções do Hardhat 2 e do Hardhat 3.
Como funciona
O projeto fixa compiladores, dependências e configuração de rede. Os testes executam chamadas contra um ambiente simulado e verificam resultados, eventos e reversões. Um fork pode utilizar o estado de uma rede em um bloco determinado, desde que o RPC permita acessar os dados históricos necessários.
A implantação pode ser organizada por meio de scripts ou de ferramentas como o Ignition. Em ambos os casos, conservam-se parâmetros, endereços e verificações. Repetir uma tarefa administrativa não deve emitir ativos nem transferir permissões novamente por acidente: os scripts exigem verificações do estado antes de agir.
O que o Hardhat oferece
O Hardhat se encaixa quando os contratos convivem com serviços e testes de integração em TypeScript. Por exemplo, uma emissão pode ser verificada junto com o cliente que prepara as chamadas e decodifica seus eventos. Isso ajuda a detectar diferenças entre a interface que a aplicação utiliza e a que o contrato expõe.
Uma entrega pode incluir testes de papéis, condições de pausa, transferência de administração e comportamento diante de contratos externos que falham. A equipe mantém um registro por rede com as versões utilizadas. Assim, um incidente pode ser reproduzido sem depender da configuração local de quem realizou a implantação original.
Limitações e critérios de escolha
A simulação local não reproduz todas as condições de uma rede pública. Um fork é uma fotografia do estado, não uma garantia de execução futura. Os testes devem ser complementados com verificações do ambiente de destino e uma política para chaves, permissões e transações administrativas.
A escolha em relação ao Foundry depende das necessidades de testes e do stack da equipe. Podem coexistir se compartilharem versões e configuração de forma explícita. Uma atualização do Hardhat exige revisar plugins, artefatos e comportamento dos scripts, além de verificar se o projeto continua compilando.
Também conhecido como
- Hardhat framework
- Hardhat Network





