I have an idea for a native asset where txn fees are sent to a treasury and token holders can vote on how to spend those funds. Exactly like how Cardano currently works, but for a different purpose (ex. A Miami coin where token holders can vote on proposed projects to improve the city).

Is it possible to build something like this?


I think what you're describing is basically a smart contract.

How you design a smart contract is not limited by anything other than your technical ability, then by your own imagination. You could design a smart contract where any transaction that occurs incurs a small transaction fee and the fee is stored in a designated address or "treasury" address where the UTXO can only be spent by having a vote by holders of the token.

The voting functionality would need an off-chain validator function confirming the person voting indeed has some of the correct native asset, and how much they have. Next you would create functions to submit proposals, which again check that the person submitting a proposal holds that specific native token.

So essentially the smart contract would handle the logic of submitting, voting on, and determining which proposal wins and becomes the future of the dApp/protocol/whatever.

This is what makes blockchain so exciting, it's simply up to your imagination. Look into the Uniswap smart contract for a more in-depth look into creating a smart contract with the functionality you defined.

  • 1
    This was a perfect answer, thank you so much :) My only follow-up question - is it not possible to have the voting occur on-chain? Jul 5 at 23:06
  • 1
    Well, uhh.. that's essentially what's happening here. You can only execute a smart contract through a UTXO. Nothing happens on Cardano on it's own, it must be triggered by a UTXO which of course means everytime you interact with a smart contract and executing a function that's part of that contract you are "on-chain". Jul 6 at 2:56

The on chain voting features coming with the Voltaire rollout will allow users to use those voting systems for other things because they are part of the base protocol. So incorporating voting on chain with a plutus contract will be possible.

just not right now.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.