We work on the governance team in our blockchain club and we find a consistent issue that we tend to miss the proposal end date or unable to reach consensus through text. For example, when less than half of the team have strong opinions, the final vote tends to be delayed as we have to communicate individually to reach a collective answer as an organization. Each member in an organization should have a streamlined way to voice their opinions and engage in the governance. GoatVoter supports organizations to use layer 2 contracts to conveniently let all members cast votes towards proposals. Members will be reminded before due dates to avoid missing a vote. The final vote will be based on the majority opinion of the voted members, so all members have direct power towards the final vote without the high friction of communication. GoatVoter enables Defi governance voting on Uniswap, Makerdao, and Compound. With GoatVoter, we want all members in organizations, regardedless of DAO or not, to conveniently put out votes and sit assured that their research efforts will not be wasted due to a missed voting period.
We use React as the frontend to create the user interface, and our backend is completely empowered by web3 protocols. We use Optimism as our backend to interact with the contract to store in-team voting status and send member votes. We then have Chainlink Automation to trigger the castFinalVote function on the Optimism contract everyday to cast vote on Ethereum's voting contracts. We use Hyperlane to send interchain communication from Optimism to Ethereum and send the voting transactions to the corresponding Defi protocols. We are also integrating push notification to support on-chain reminders to vote.