GridZone.io (ZONE) tokenHolders of ZONE token have the ability to govern the protocol via the governor contract.
Governor AlphaThe administrator of the timelock contract. Holders of ZONE token may create and vote on proposals which will be queued into the timelock.
Installation
Pull the repository from GitHub and install its dependencies. You will need npm installed.
git clone https://github.com/GridZone/gridzone-governance.git
cd gridzone-governance
npm install
Environment
Create files storing private key and infura API key.
cp .secrets.json.template .secrets.json
Open .secrets.json with text editor, write menemonic, infra API key, and etherscan API key
Compile
Compile the smart contracts.
npx hardhat compile
Deploy and Verify contracts
You can deploy contracts and verify with etherscan API key.
And you can deploy contracts and verify them individually.
GridZone
Timelock
Governor Alpha
VoteBox
Print out deployed contracts
Change the Timelock admin as GovernorAlpha contract
execute setPendingAdmin of Timelock contract. The parameter is the address of GovernorAlpha contract. This function must be called by Timelock admin
execute __acceptAdmin of GovernorAlpha contract. This function must be called by GovernorAlpha guardian