FNCY 2.0 (ENG)
Search
K

Hardhat

Deploying Smart Contract Using Hardhat

In this article, we'll learn how to build a smart contract with Hardhat.

Preparation

Before you start, make sure that the following prerequisites are installed.
  • Node.js and npm
  • Hardhat

Project Setting

  1. 1.
    Create a new directory for your project and navigate to it.
  2. 2.
    Run the following command to initialize a new npm project.
npm init -y
  1. 3.
    Run the following command to install Hardhat.
npm install --save-dev hardhat
  1. 4.
    Run the following command and follow the prompts to initialize Hardhat.
npx hardhat

Writing Smart Contract

  1. 1.
    In thecontractsdirectory, create a solidity file named MyContract.sol.
  2. 2.
    Create a file as shown below.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract MyContract {
// Contract code goes here...
}

Deploying Smart Contract

  1. 1.
    Create a new file called deploy.js in the scripts directory.
  2. 2.
    Write a deployment script using Hardhat's deployment API.
const { ethers } = require("hardhat");
async function main() {
const MyContract = await ethers.getContractFactory("MyContract");
const myContract = await MyContract.deploy();
await myContract.deployed();
console.log("MyContract deployed to:", myContract.address);
}
main()
.then(() => process.exit(0))
.catch((error) => {
console.error(error);
process.exit(1);
});
  1. 3.
    Run the following command to run the deployment script.
Set the network name to deploy to.
npx hardhat run scripts/deploy.js --network <network-name>
  1. 4.
    This script deploys a smart contract and writes the contract address to the console.

Wrapping Up

You've successfully deployed a smart contract using Hardhat. Now you can call the deployed contract using its address.
For more information, visit Hardhat's official website.
Last modified 6mo ago