$ yarn install
$ yarn prepare
Create a .env
following the .env.example
:
INFURA_API_KEY=zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
MNEMONIC=here is where your twelve words mnemonic should be put my friend
Compile the smart contracts with Hardhat:
$ yarn compile
Compile the smart contracts and generate TypeChain artifacts:
$ yarn typechain
Lint the Solidity code:
$ yarn lint:sol
Lint the TypeScript code:
$ yarn lint:ts
$ yarn prettier
Run unit tests:
$ yarn test
Run a single test:
$ yarn test test/MyContract.test.ts
Generate a test coverage report:
$ yarn coverage
$ yarn deploy:kovan
$ yarn verify:kovan
Delete the smart contract artifacts, the coverage reports and the Hardhat cache:
$ yarn clean
- Hardhat: compile and run the smart contracts on a local development network
- TypeChain: generate TypeScript types for smart contracts
- Ethers: renowned Ethereum library and wallet implementation
- Waffle: tooling for writing comprehensive smart contract tests
- Solhint: linter
- Solcover code coverage
- Prettier Plugin Solidity: code formatter