- Install
nvm
(Node Version Manager) cd
to the project directory and execute the following:nvm install nvm use npm install
This project uses EditorConfig for IDE configuration.
See .editorconfig
for settings.
Many popular IDEs and editors support this out of the box or with a plugin.
This project uses Prettier, so please run it before checking in:
npm run pretty
See .prettierrc
for settings.
Some IDEs and editors have plugins for running Prettier.
This project uses ESLint. Check linting before checking in:
npm run lint
See tslint.json
for settings.
Many IDEs and editors support TSLint.
This project uses Mocha, Chai, and Waffle for testing. Run tests before checking in.
npm test
npm run build
Set up a .secrets.json
file that looks similar to example.secrets.json
:
After deploying your contract, you can verify it by running the following.
npx hardhat verify --network rinkeby CONTRACT_ADDRESS
For a proxy contract, you'll need to pass the arguments to the proxy contract, and pass the contract as well:
npx hardhat verify --network rinkeby \
--contract contracts/common/UpgradeableProxy.sol:UpgradeableProxy \
--constructor-args examples/parcelNFTConstructorParams.js \
CONTRACT_ADDRESS
npx hardhat verify --network rinkeby CONTRACT_ADDRESS
npx hardhat verify --network mainnet \
--contract contracts/common/UpgradeableProxy.sol:UpgradeableProxy \
--constructor-args examples/parcelNFTConstructorParams.js \
CONTRACT_ADDRESS
See hardhat-etherscan for more examples