Using Hardhat

Hardhat is a full-featured development environment for contract compilation, deployment and verification. The Hardhat Etherscan plugin supports contract verification on kcc scan.

Get Started

1) Install Hardhat

If you are starting from scratch, create an npm project by going to an empty folder, running npm init, and following the instructions. Recommend npm 7 or higher.

Once your project is ready:

npm instructions

npm install --save-dev hardhat

yarn instructions

yarn add --dev hardhat

pnpm instructions

pnpm add -D hardhat

2) Create a project

Run npx hardhat in your project folder and follow the instructions to create (more info here).

3) Install plugin

Install the hardhat-etherscan plugin (requires v3.0.0+).

npm

yarn

pnpm

4) Add plugin reference to config file

Add the following statement to your hardhat.config.js.

If using TypeScript, add this to your hardhat.config.ts. More info on using typescript with hardhat available here.

Config File

Your basic Hardhat config file (hardhat.config.js or hardhat.config.ts) will be setup to support the network you are working on. In this example we use the kcc test network and a .js file.

You can add a customChains object to the config file. It includes:

  • chainID - Network chain ID

  • apiURL - Block explorer API URL

  • browserURL - Block explorer URL

Deploy and Verify

Deploy

Verify

You can include constructor arguments with the verify task.

KCC Testnet example (has constructors).

Note the verify task will not be listed in the available tasks lists at npx hardhat --config but should work as expected.

If not, check you have the minimum required version of the nomiclabs-hardhat-etherscan plugin (v3.0.0+) installed

Confirm Verification on KCC Scan

Go to KCC Scan instance and paste the contract address into the search bar. If verified, the code tab will display a green checkmark.

Selecting the Code tab will provide additional information about your contract.

Resources

Learn more about plugin configs, troubleshooting etc. at https://hardhat.org/plugins/nomiclabs-hardhat-etherscan.html

Last updated