DAOTOOL101 #5: Snapshot for Governance & Voting

Author(s): zerohash | Tet#7609

Editor(s): koala | koala#4988

Last updated: 2nd April 2022


Importance of DAO Governance and Voting

In any decentralized autonomous organization (DAO), collective decision making is the most important aspect for its governance and operation. A fair and well distributed system of democracy is the go-to governance model - yielding the most ideal decision-making process. In DAOs, token holders are usually allowed to be able to voice their opinions towards improvement proposals fuelled by their altruism towards the DAO’s mission, as well as their own agenda.

Three main features of a solid DAO governance model are its scalability, resiliency, and transparency. These three features can be considered the foundation of any DAOs in existence.

  1. Scalability - The ability of the governance model to operate irrespective of the size of the proposal and voting duration. As the size of any DAO increases, so does the voter-base, as well as the complexity of the proposal that may require a longer timeframe to complete.
  2. Resiliency - The ability of a governance model to detect, resist and amend fraudulent and unethical decisions from governance voting. The governance model should be able to correct itself from bad actor manipulation and shenanigans.
  3. Transparency - The ability of a governance model to operate with absolute clearness in its goals and targets, as well as its operational procedures.

The following guide will teach you three things about Snapshot: (1) creating your own Snapshot Space, (2) creating a proposal, and (3) voting on a proposal.


Snapshot: The Decentralized Off-Chain Voting System

Creating a Snapshot Space

1. Get an ENS domain to setup your Space

A barrier-to-entry in creating a Snapshot Space is that the creator needs a registered ENS domain name. To do this, one can easily visit the ENS App to register one.

ENS App where users register for their ENS domain name.
ENS App where users register for their ENS domain name.

2. Set your ENS text-record and assign the Space controller

With the registered ENS domain name, return back to Snapshot, click the “+” icon form the sidebar and use your ENS domain name that you just registered.

Click the + sign and create your own Space.
Click the + sign and create your own Space.

3. Configure your Space settings

You should now be on your Space profile settings page. Here, you are to set up the details of your Space such as its name, avatar, network, symbol, and social links.

Fill in the details of your Space in the settings page.
Fill in the details of your Space in the settings page.

4. Set up the strategies of your Space

Strategies are the core of any Snapshot Space, it is what makes voting possible. It calculates the voting results of any proposal. A proposal can have up eight (8) strategies. The list of strategies are all available in this GitHub repository.

Strategies that can be added to your Space.
Strategies that can be added to your Space.

The most common strategy is the erc20-balance-of strategy, using the balance of a token as voting tickets in a proposal voting. The erc20-balance-of strategy can be seen below.

{
  "address": "0xba100000625a3754423978a60c9317c58a424e3D",
  "symbol": "BAL",
  "decimals": 18
}

5. Set up the admins and filters of your Space

The admins are basically the addresses that are given authority to edit the Space settings, as well as the proposal settings. The filter setting is to choose who is allowed to start a proposal.

6. Save the Space settings

Your Space is now good to go!


Creating a Snapshot Proposal

1. Go to a project space and click on connect wallet in the top right corner

As is tradition, connect your wallet.
As is tradition, connect your wallet.

2. Connect with wallet provider where you hold relevant tokens and click on “New Proposal”

You can find the "New Proposal" tab on the left sidebar of the Space.
You can find the "New Proposal" tab on the left sidebar of the Space.

3. Fill out the Title and summary of your proposal.

Give your proposal a title, description, and relevant link.
Give your proposal a title, description, and relevant link.

4. Go to the “Voting” box and select the Voting system, start date and end date of your proposal. Make sure you allow enough time for voting.

Configure the type of voting process, voting choices, and voting duration.
Configure the type of voting process, voting choices, and voting duration.

5. Click on “Publish” to create your proposal

Clicking Publish will lead you to sign a fee-less transaction, this will allow your proposal to go live.

Click "Publish" and you are good to go.
Click "Publish" and you are good to go.

How to vote on Snapshot?

Voting power depends on the number of token you hold when a block is created. This means if you hold no token in the predetermined block, you will be unable to vote.

1. Go to your project's snapshot page

People DAO's Snapshot space.
People DAO's Snapshot space.

2. Click on "Connect wallet" located on the top right corner

Connect your wallet to vote.
Connect your wallet to vote.

3. Connect with wallet provider you use

Choose which wallet to connect with.
Choose which wallet to connect with.

4. Click on the option(s) you want to vote for

Depicted here are votes of Yes and No. However, not all proposals are based on these options.

Choose your voting option.
Choose your voting option.

5. Sign the message with your wallet

As Snapshot uses off-chain voting, all procedures are fee-less and free - hence off-chain. Once you have signed the voting, it’s all done. Congratulations on your first proposal voting. We call this hard consensus governance.

Subscribe to PeopleDAO
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.