Skip to content

Repository files navigation

Sample Hardhat 3 Project (mocha and ethers)

This project showcases a Hardhat 3 project using mocha for tests and the ethers library for Ethereum interactions.

To learn more about Hardhat 3, please visit the Getting Started guide. To share your feedback, join our Hardhat 3 Telegram group or open an issue in our GitHub issue tracker.

Project Overview

This example project includes:

  • A simple Hardhat configuration file.
  • Foundry-compatible Solidity unit tests.
  • TypeScript integration tests using mocha and ethers.js
  • Examples demonstrating how to connect to different types of networks, including locally simulating OP mainnet.

Usage

Running Tests

To run all the tests in the project, execute the following command:

npx hardhat test

You can also selectively run the Solidity or mocha tests:

npx hardhat test solidity
npx hardhat test mocha

Make a deployment to Sepolia

This project includes an example Ignition module to deploy the contract. You can deploy this module to a locally simulated chain or to Sepolia.

To run the deployment to a local chain:

npx hardhat ignition deploy ignition/modules/Counter.ts

To run the deployment to Sepolia, you need an account with funds to send the transaction. The provided Hardhat configuration includes a Configuration Variable called SEPOLIA_PRIVATE_KEY, which you can use to set the private key of the account you want to use.

You can set the SEPOLIA_PRIVATE_KEY variable using the hardhat-keystore plugin or by setting it as an environment variable.

To set the SEPOLIA_PRIVATE_KEY config variable using hardhat-keystore:

npx hardhat keystore set SEPOLIA_PRIVATE_KEY

After setting the variable, you can run the deployment with the Sepolia network:

npx hardhat ignition deploy --network sepolia ignition/modules/Counter.ts

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages