@routerprotocol/asset-bridge v0.1.0
hardhat-boilerplate
- 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
Usage
Pre Requisites
Before running any command, make sure to install dependencies:
$ yarn installSet up .env
Copy .env.example to .env and update MNEMONIC
cp .env.example .envCompile
Compile the smart contracts with Hardhat:
$ yarn compileTypeChain
Compile the smart contracts and generate TypeChain artifacts:
$ yarn typechainLint Solidity
Lint the Solidity code:
$ yarn lint:solLint TypeScript
Lint the TypeScript code:
$ yarn lint:tsTest
Run the Mocha tests:
$ yarn testCoverage
Generate the code coverage report:
$ yarn coverageReport Gas
See the gas usage per unit test and average gas per method call:
$ REPORT_GAS=true yarn testClean
Delete the smart contract artifacts, the coverage reports and the Hardhat cache:
$ yarn cleanDeploy
Deploy the contracts to Hardhat Network:
$ yarn deployDeploy the contracts to a specific network, such as the Ropsten testnet:
$ yarn deploy:network ropstenSyntax Highlighting
If you use VSCode, you can enjoy syntax highlighting for your Solidity code via the vscode-solidity extension. The recommended approach to set the compiler version is to add the following fields to your VSCode user settings:
{
"solidity.compileUsingRemoteVersion": "v0.8.4+commit.c7e474f2",
"solidity.defaultCompiler": "remote"
}Where of course v0.8.4+commit.c7e474f2 can be replaced with any other version.
2 years ago