DecGov

DecGov

Fully decentralized governance hosted in the ICP

The problem DecGov solves

The only way to have free governance (i.e. no tx fees) for everyone is to use a at least semi-centralized service like Snapshot.org. There, even though votes can't be falsified, the owners can still theoretically silently delete votes without anyone noticing. Having a decentralized, transparent and verifiably secure system is what SecGov offers.

Having mentioned free governance, there are still cases where you can't go without on-chain governance, specifically with DAOs allowing proposals to directly execute a transaction from a multisig-less treasury (f.e. Compound). With the help of ICP's ECDSA signing mechanism, transactions can be executed without a need for costly voting, while still removing the risk of individual multisig signers.

As for EVMs - we can easily support any compatible network, all we need is an rpc url. What's more interesting though, is the possibility of Bitcoin Ordinals having their own decentralized governance platform, which, from, apparently, doesn't seem to exist yet in any form. Through ICP's Bitcoin interconnect, it is possible to calculate the voting power of individual users on Bitcoin as well, same, as using a balance of an ERC20 on an EVM chain.

The last thing, which I have already touched on in the second paragraph, is events, though in general. Each action on the platform can trigger an event, which, depending on the settings of each "space", can either trigger a predefined onchain transaction or just a plain old HTTP request (i.e. a Discord webhook, a Twitter post, etc.), with dynamic fields depending on the event.

Challenges we ran into

Unfortunately, while we have planned many fun features, we have been immensely slowed down by various tiny issues and bugs in the ICP ecosystem. Finding a storage solution took hours, setting it up and getting it working even moreso. Then, as storage has to be separated from the frontend through a backend layer, which would also take care of things like event handling (-> tx sending/webhook calling), we had to follow an (outdated) tutorial to get an Express server running, which ended up working, and then even later on ended up just completely breaking without any hope for a fix. Thus, we were left with just some storage and the frontend, which we connected up directly for the demo, but unfortunately in this state we couldn't call production-ready.

All that troubleshooting, which cost us valuable time, unfortunately ended up preventing us from implementing many of our major features, like onchain transactions and Bitcoin Ordinals.

The end result is a Next.js application deployed on ICP and an sqlite database also deployed on ICP.

Tracks Applied (4)

Extending Ethereum with ICP

The project was focused on ICP, deploying the whole stack there. The backend we wrote included fetching data from EVM ch...Read More

Internet Computer

Build any dapp on Linea

The project aims to support Snapshot-like governance on any EVM compatible chain

Linea

Best DeFi project

The project aims to support Snapshot-like governance on any EVM compatible chain

Mantle

Decentralized Community Resilience Award

The project aims to provide governance for a wide range of chains, including suppott for Ordinals on BTC. It also aims ...Read More

Discussion