xGov44 - Updog Advanced DAO Tooling

Author Evan Maltz (@watsupdev)

Category dApps, Tools

Focus DeFi, Social

Open-Source Yes

ALGO Requested 50000

Abstract

I have already built out and developed updog.vote, a DAO launcher, which is currently live on mainnet. The site allows anyone to launch a DAO contract
using any ASA as a governance token. Proposals have a fixed set of possible actions (e.g. receive algo, ASA(s), change vote threshold, change proposal
fees, call a foreign app with custom args, etc.). A big limitation to this “basic” DAO contract is that it only allows 1 proposal a time. My proposal
is to develop a more advanced DAO contract system allowing for virtually unlimited, simultaneous proposals with variable durations and execution times.

Development will first involve creation of a system of smart of contracts with a central hub (the “treasury”) and proposal contracts that connect to it.
Next, I’ll update my frontend interface to interact with and manage these new DAO contract systems. Finally, I will open source the “basic” DAO contract
as an asset to the community.

Link for details

1 Like

can you compare your solution to xBallot by Headline? they both seem to be pretty similar at first glance

you and xBallot seem to go the same way and only support tokens to determine voting power which is kind of a bummer imo as we have a lot of NFT communities on Algorand but they would need to introduce an extra governance token to use your solution instead of being able to plug in a creator address (or multiple) and give voting power to all holders of NFTs that come from that creator wallet. I therefore dont see me using these kind of tools very often because i am mainly part of NFT communities instead of token focussed communities

1 Like

Updog’s DAO contracts are very different from xBallot. The main difference is in decentralization. The xBallot contract doesn’t directly check vote validity or voting power because it uses a snapshot based approach (which means that voters rely on xBallot’s backend to stay up and accurately report voting power). Updog’s contracts directly check vote validity and voting power and so can be operated safely even if updog.vote goes down, meaning that you never have to trust my tabulation of voting power.

Secondly, updog does support NFT projects, though it’s not quite ready for self service. updog.vote/coffee is the DAO created for the Coffee Bean DAO NFT project and it is fully functional on mainnet right now. I do plan on making this ready for self service asap.

1 Like

thanks for the clarification!

does that mean the voter doesnt need to hold the tokens for long? they can buy them, vote and dump?

oh thats cool! would love to see voting for NFT projects transitioning to something else than discord upvote/downvote button :smiley:

1 Like

Thanks! I can manually launch them for NFT projects if you know any that would like to get one set up!

The contract requires you to stake the tokens for the entire duration of the active vote. So you can stake at any time during a vote, but you can’t unstake until after the vote is completed. It does mean you can buy tokens for just a single vote and then leave though. I may include a way to calculate voting power based on token-holding + duration but it gets a bit tricky, wanted to start simple first.

1 Like

ah thats good! dont know if any projects would love to switch already, but i definitely like the idea of them doing it

but that also means NFT projects by like stitch and minner would have problems because they do a lot of “adventures” hmm. maybe they could track NFTs in the escrow as well as a solution