DAOTOOL101 #6: Juicebox Protocol for Crowdfunding
April 17th, 2022

Author(s): enfin | enfin#5116

Editor(s): zerohash | Tet#7609

Last updated: 17th April 2022

The Juicebox protocol holds a special place in PeopleDAO lore. Juicebox consists of a set of smart contracts that enable crowdfunding on the Ethereum chain. In the fall of 2021, ConstitutionDAO attempted to buy a rare copy of the US Constitution at auction, using Juicebox to crowdfund the bid. In exchange for their contributions, funders received PEOPLE tokens that were to eventually enable voting on the display of the document. When ConstitutionDAO's bid failed, the DAO disbanded, but PEOPLE remained. When PeopleDAO formed in the aftermath of this episode, we adopted PEOPLE as our governance token.

Juicebox represents a remarkable evolution in the decentralization of crowdfunding. Anyone connected to the Ethereum network can build using the Juicebox contracts, which themselves live on the Ethereum chain. Unlike on a centralized platform (such as GoFundMe, Kickstarter, or Indiegogo), external authorities cannot step in to shut down a project or freeze the funds raised. Project owners retain control: upon deploying their contracts, they receive an ERC-721 token that enables administrative privileges over their projects. Additionally, the ERC-20 tokens issued to contributors have the standard benefits of on-chain assets (self-custody and transferability), and projects can use them to provide contributor benefits, if any (e.g. voting rights in a DAO, access to apps or communities, whitelists/discounts, etc.).

When a project owner transfers funds out of Juicebox, a fraction of the funds (currently 2.5%) get routed to JuiceboxDAO, the group that maintains the Juicebox protocol. The fee takes the form of a contribution to JuiceboxDAO's own Juicebox project, so other projects using the protocol gain a stake in the protocol. Note that the issuance rate will most likely remain below the market price of JBX (JuiceboxDAO's token), so using the protocol does incur a cost. JuiceboxDAO has some control over the protocol, such as setting the fee. Importantly, they also maintain the website that provides an interface for users of the Juicebox protocol. While in principle anyone can use the contract without the website, in practice the website makes it safer and easier for the vast majority of users to find projects, fund projects, and launch projects.

Funding a Project

The Juicebox website makes it easy to contribute to a project, but as with other decentralized financial applications, you should take care when connecting your wallet. For example, bad actors could set up a copycat website to drain the wallets of careless users; make sure you have the correct web address (https://juicebox.money/) and the correct project (each project has a handle to help find it on the site). PandaDAO, the first subDAO spun off from PeopleDAO, raised an impressive 1929 ETH using the Juicebox handle @pandadao, so the project can be found at https://juicebox.money/#/p/pandadao (note that funding has closed for PandaDAO at the time of writing). Also take care to review a project's settings and research a project before making a contribution, because the lack of central authority involvement means users have minimal recourse if project organizers do not make a good faith effort to go and accomplish a project's goals. Pick projects you have verified by doing sufficient research.

“Don’t trust, verify.”

Making a contribution to PandaDAO on Juicebox.
Making a contribution to PandaDAO on Juicebox.

To make a contribution, first click on the Connect button at the top-right. The website supports most common Ethereum wallets. Enter the amount you intend to contribute in the input box, and click Pay. A summary of your contribution will pop up (also giving you a chance to attach a snippet of text or an image).

Payment summary.
Payment summary.

Upon clicking Pay, your wallet should pop up requesting approval for the transaction, including estimates of gas fees and other details. If everything looks right, sign off on the transaction to submit it to the network for confirmation. If all goes well, your contribution will show up on Etherscan and in the activity feed on Juicebox.

Activity feed showing contribution.
Activity feed showing contribution.

Once the project owner has issued the tokens, you can click Manage (next to Your balance, under Tokens) to Claim your tokens. Note that the same dialog box allows you to Redeem or Burn your tokens, which can in some cases will send funds back to you (if the project's settings withhold excess funds as Overflow) in exchange for your tokens.

Creating a Project

While any crowdfunding platform needs to minimize the barriers to participation on the funder side to encourage contributions, Juicebox also makes it easy to launch a project of your own. However, before launching (which incurs gas fees), make sure you have an idea that will appeal to prospective contributors, and a plan on how to get the word out.

From the Juicebox homepage (https://juicebox.money/), the section labeled Design your project leads you through a series of forms that help you set up your project.

1. Project details: Your project name, description, and links to additional information that can help prospective funders learn about your project.

Entering your project details.
Entering your project details.

2. Funding cycle: Projects can be a one-shot campaign or set up as recurring funding cycles. Setting a target means that funds raised in excess of the target are held as overflow that token holders can withdraw by redeeming tokens. Project owners can only change settings at funding cycle transitions. If a funding cycle duration is not set, then the project owner can change settings at any time.

Setting a funding cycle.
Setting a funding cycle.

3. Funding distribution: One or more addresses where the funds will be withdrawn to (defaulting to the project owner's address).

4. Reserved tokens: In addition to tokens issued to funders, a proportional number of tokens can be reserved and sent to predetermined addresses (defaulting to the project owner's address).

5. Reconfiguration: This setting commits the project owner to announce changes to other project settings in advance of a new funding cycle, with a 3-day or 7-day delay. If set to "No strategy," a project owner could change other settings with no notice (for example, they could set "Allow minting tokens" to on, send as many tokens as they want to any wallet they want, and sell the new tokens on decentralized exchanges). If a project does not include funding cycles, the website omits this setting, which defaults to "No strategy" and the project owner can change settings at any time.

6. Incentives: The discount rate essentially increases the price of newly issued tokens in successive funding cycles, which increases the incentive to get in early and limits the dilution of tokens in circulation. The bonding rate determines how much overflow tokens can be redeemed for as a function of cumulative redemption, to maintain the incentive to hold onto tokens rather than redeem.

Setting token issuance and redemption rate dynamics.
Setting token issuance and redemption rate dynamics.

7. Restricted actions: The project owner can Pause payments to disable the ability to make contributions (to stop a campaign, either permanently or temporarily). The Allow minting tokens setting, if turned on, allows the project owner to send any number of tokens to any address.

Upon clicking Review & Deploy, the project owner receives a summary of the project settings. Clicking Deploy project on mainnet will open your wallet for approval, which will launch the project (and incur gas fees) upon signing.

Review and deploy!
Review and deploy!

The Juicebox protocol empowers people, from DAO organizers to independent developers or artists, to fund projects without relying on centralized platforms. By operating on the blockchain, Juicebox facilitates new funding models and the creation of public goods. The success of the ConstitutionDAO and PandaDAO campaigns demonstrates the critical role of Juicebox in the DAO toolbox, and how it can aid in PeopleDAO's mission to improve the accessibility of DAOs as a form of collective action.

Subscribe for updates
Receive new entries by PeopleDAO directly to your inbox.
View collectors
This entry has been permanently stored on-chain and signed by its creator.