Note: This repository was generated from a template or is the template itself. To set up a new project, set the missing data marked "TODO" in
package.json
and remove this notice.
This project is built with SolidState. See the solidstate-solidity documentation for information about contract integration and testing.
Install dependencies via Yarn:
yarn install
Setup Husky to format code on commit:
yarn prepare
Compile contracts via Hardhat:
yarn run hardhat compile
The Hardhat environment relies on the following environment variables. The dotenv
package will attempt to read them from the .env
and .env.secret
files, if they are present.
Key | Description |
---|---|
API_KEY_ETHERSCAN |
Etherscan API key for source code verification |
NODE_URL_MAINNET |
JSON-RPC node URL for mainnet network |
NODE_URL_TESTNET |
JSON-RPC node URL for testnet network |
PKEY_TESTNET |
private key for test/development use on testnet network |
PKEY_MAINNET |
private key for production use on mainnet network |
REPORT_GAS |
if true , a gas report will be generated after running tests |
By default, Hardhat uses the Hardhat Network in-process. Two additional networks, mainnet
and testnet
are available, and their behavior is determined by the configuration of environment variables.
Test contracts via Hardhat:
yarn run hardhat test
Activate gas usage reporting by setting the REPORT_GAS
environment variable to "true"
:
REPORT_GAS=true yarn run hardhat test
Generate a code coverage report using solidity-coverage
:
yarn run hardhat coverage
A static documentation site can be generated using hardhat-docgen
:
yarn run hardhat docgen