Getting Started
Collective Governance implements a flexible approach to voting to support a wide variety of communities. Each community can define the individuals who may participate in governance decision making by defining a VoterClass. The VoterClass defines the characteristics of the voting population and determines if the wallet is in or out for a particular vote.
Setting up a Governance contract is a two step process.
Build a VoterClass
VoterClass Implementations:
Open voting - CommunityClassOpenVote
ERC-721 Token voting (including ERC-721 Enumerable) - CommunityClassERC721
Pool voting - based on a specific list of voters - :ref:`CommunityClassVoterPool
<CommunityClassVoterPool
>`
Create the Governance contract
Once the VoterClass has been created for your community, proceed with building a Governance <Governance contract. There are two ways to build a contract.
Builders
System to build a contract with the fewest number of transactions
GovernanceBuilder to build a contract with the fewest number of parameters
Contract Requirements
VoterClass The project voter class. Possibly based on an ERC-721 <https://erc721.org> token.
Supervisor One or more project supervisors to act as a community steward