All Posts

Origami Primitives: DAO Building Blocks

Published by
Andrew Warner
on
October 11, 2022

We have 7 essential building blocks for creating DAOs at Origami.

We use the programming term “primitive” for them because these blocks are open and extendible. DAOs can see how we wrote them and add to them as needed.

Let’s look at the 7 primitives:

Membership NFT

We use NFTs the way musicians use VIP concert tickets. They allow the right people to come in and access a DAO’s private chat, voting tools, documents, and more.

What’s unique about our approach is that our NFTs can be blocked from sales and other transfers. So, while Taylor Swift’s concert tickets can be scalped to the highest bidder, our NFTs won’t leave your community.

That’s helpful for clients like VC3, the investment DAO created by Kauffman Fellows. They’re a group of investors who went through the Kauffman venture training and networking program. They wanted to exclusively invest with peers who had the same training.

By making their NFT nontransferable, they prevent access to their investment group from being sold to the highest bidder and diluting the ethos and camaraderie that brought them all together.

Non-transferability is an optional feature, but many DAOs we work with choose to enable it.

Governance Token

Tokens can be seen as both a medium of exchange, like a country’s currency, and a way for hardworking contributors to get a financial upside, like a startup’s pre-IPO shares. But that’s not their primary purpose.

The Governance Token is what gives members a voice in the direction and activities of the DAO. Ideally, the Token represents members’ contribution to advancing the DAO towards its goals. So members who contribute a lot get more governance tokens and more voting power as a result.

Origami uses the ERC-20 Token Standard, so each token can be held in trust by committee members and transferred to recipients as needed.

Governor Contract

The Governor is what keeps votes from being manipulated. It takes a snapshot of how many tokens a given holder has at a particular point in time, to facilitate voting.

Without the Governor, if a vote is scheduled for a DAO whose Token is publicly traded, someone with deep pockets could buy an oversized number of governance tokens just before the vote and dominate the decision.

Snapshotting limits voting to tokens held before the contents of a proposal are public.

Proposals

We chose to create the Proposals primitive in-house because we believe strongly that other options are too limited, especially when it comes to protecting privacy.

That includes:

  • Privacy over what the DAO votes on: Venture DAOs, for example, need to protect the names of the investments they’re considering so they can prevent front-running.
  • Privacy over what each member votes on: When members’ votes are public they can be manipulated. That’s why countries don’t require citizens to disclose who they voted for.

We allow the use of zero-knowledge proofs to obscure both the contents of a proposal and each individual’s vote.

Our proposal primitive also allows for a variety of voting strategies, including multiple choice and binary (yes/no) votes. It also offers multiple methods of weighing those votes, like one vote per wallet (which would use the membership NFT), one vote for each governance token held, or quadratic voting.

Charter

Just like family board game squabbles can be avoided by articulating house rules before games start, a DAO’s Charter is a set of rules that can align everyone from the outset.

The Charter is how a DAO and its members agree to act or react to situations. We offer a template for writing it, but we also coordinate members’ agreement to abide by it and we facilitate changes to it.

To ensure unity at the outset, we offer a click-wrap agreement during onboarding. We enable modifications of the charter with a special type of proposal. If passed, it creates a new version of the charter, which could propagate changes to other smart contracts. When the charter changes, we handle versioning of it, and we ensure that members see and agree to abide by it.

The charter is a primitive because it’s executable. So if it includes three committees, for example, those committees are used in other smart contracts as configuration values.

Committee

A Committee (often called “team” or “pod”) is a group of people who are authorized with power that’s granted to them by the Charter. At Orange DAO, for example, the Treasury Committee is responsible for making a seasonal disbursement of tokens. Committees require tokens to do their business and the Treasury’s responsibility is to issue them.

What’s important is that each committee has a Gnosis Safe that is associated with their smart contract. And if the contract says a certain number of tokens needs to flow to that committee, there’s a Safe for those tokens to go into.

This structure allows the committees and their subcommittees to have autonomy within a pre-defined limit.

Committee Membership

DAO members vote for their representatives on committees. Those Committee Members act as signatories on the Gnosis Safes that are associated with the committees they’re in. Just as in the US even the President has to stop or go based on Congress’s wishes because Congress has the power of the purse, in a DAO, Committee Members get much of their autonomy from how the treasury flows through them.

Committee members, of course, change. Origami helps facilitate those changes by providing each Committee Member with an NFT, which acts like a badge. Then, every season, after new Committee Members are voted in, we move that NFT to the new Committee Members, and we queue up a transfer of the Gnosis Safes from the previous signatories to the new ones.

Want to get the latest updates?
Please enter a valid email address.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Ready to Join Us?

Whether you’re ready to get started today or just want to contact us to learn about our process, we’re here for you.

Contact us
Apply here
Origami App Dashboard