2.0.2 • Published 1 year ago

@luxdefi/hardhat v2.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

hardhat-framework

This package helps configuring a repo for hardhat development the Boring way. This is very opinionated :)

Creating a new project

We will do this using the yarn package manager, starting with:

yarn init yarn add --dev boringcrypto/hardhat-framework yarn boring init

Setting up your .env

You can include your environment variables in a .env file in the root of your repo. Alternatively you can set an actual environment variable called DOTENV_PATH to point to a central .env file to be used. This way you can use the same environment settings accross multiple projects.

Some useful settings:

ALCHEMY_API_KEY=
COINMARKETCAP_API_KEY=
HARDHAT_NETWORK=hardhat
HARDHAT_MAX_MEMORY=4096
HARDHAT_SHOW_STACK_TRACES=true
HARDHAT_VERBOSE=true

Goals

  • Compile solidity contracts yarn compile
  • Run hardhat as ETH mainnet fork yarn hardhat node

  • Create typescript binding for all contracts automatic on compile

  • Run coverage check yarn hardhat coverage

  • Run gas report

  • Flatten contracts correctly
  • Handle deployments of flattened contract
  • Verify on Etherscan
  • Auto-run prettier on pre-commit
  • Code completion in tests and scripts
  • Mainnet forking fixed to the block 6 blocks before the current one

Recommended VSCode extentions

  • solidity - Juan Blanco
  • Mocha Test Explorer - Holger Benl
  • Vue Language Features (Volar) - Johnson Chu