Pular para o conteúdo principal

Modelo Hardhat

O CrossFi Hardhat Template é um projeto inicial mínimo para desenvolvedores que desejam implantar contratos inteligentes na CrossFi Chain usando o framework Hardhat.

Ele inclui um contrato simples "Olá, Mundo" e um script de implantação pré-configurado para ajudar você a começar rapidamente na Testnet e na Mainnet CrossFi.

Pré-requisitos​

  • Node.js (v18 ou superior)
  • npm ou yarn
  • Uma conta CrossFi com tokens de testnet (obtenha-os da faucet)
  • Uma chave privada com tokens XFI de testnet

Início rápido​

Siga estas etapas para implantar seu primeiro contrato na CrossFi Testnet.

1. Clonar o repositório​

git clone https://github.com/crossfichain/hardhat-template.git
cd hardhat-template

2. Instalar dependências​

npm install

3. Configurar o Ambiente​

Crie um arquivo .env no diretório raiz copiando o exemplo:

cp .env.example .env

Edite o arquivo .env e adicione sua chave privada:

PRIVATE_KEY=sua_chave_privada_aqui

[!AVISO] Nunca envie seu arquivo .env para o controle de versão. Ele contém informações sensíveis.

4. Compile Contratos​

Compile os contratos inteligentes para garantir que tudo esteja configurado corretamente:

npm run compile

5. Implantar na CrossFi Testnet​

Execute o script de implantação direcionando para a rede crossfiTestnet:

npx hardhat run scripts/deploy.ts --network crossfiTestnet

Se for bem-sucedido, você verá o endereço do contrato implantado e o hash da transação no console. Em seguida, você pode verificar a transação no CrossFi Testnet Explorer.

Configuração de Rede​

O template vem pré-configurado com as configurações de rede CrossFi em hardhat.config.ts.

Testnet​

  • Chain ID: 4157
  • URL RPC: https://rpc.testnet.ms
  • Explorador: https://test.xfiscan.com

Mainnet​

  • Chain ID: 4158
  • URL RPC: https://rpc.mainnet.ms
  • Explorador: https://xfiscan.com

Configurações de Gás​

CrossFi usa uma estratégia de preço de gás fixa. O template está configurado com um preço de gás padrão de 1 gwei, o que geralmente é suficiente para transações na rede CrossFi.

const DEFAULT_GAS_PRICE = 1_000_000_000n; // 1 gwei
info

Este é um ponto de partida recomendado. Você pode precisar ajustar o preço do gás com base nas condições da rede para transações de alta prioridade.