Public goods funding in Cosmos is broken.
This project, inspired by protocol guild aimed at Ethereum contributors, aims to improve public good funding in the Cosmos ecosystem by:
- Curating and increasing discoverability of public goods efforts
- Making interchain payments to public goods projects simple and convenient
- Instilling a culture of solidarity to support the unseen and underfunded labour in the ecosystem
We are a project built on Neutron. By utilizing IBC and Interchain Accounts, this set of smart contracts enables contributors of all types to be funded across the interchain.
Consider an active cosmwasm developer that wishes to be funded. By "registering" with the protocol guild on neutron, they may receive funding from:
- protocols/chains
- DAOs
- various foundations
- philanthropic whales
- and more?
In the depths of the bear market, we need strong support of our public goods.
To run the tests that show protocol guild in action, run
just simtest
This will:
- spin up a local interchain
- set up ICS connection between hub and neutron
- set up IBC connections between osmosis, hub, and neutron
- deploy
ibc_forwarder.wasm
andprotocol_guild_splitter.wasm
on neutron - instantiate the splitter with the following configuration:
- osmo: [(20% to cosmwasm maintainer), (70% to sdk dev team), (10% for bug bounties)]
- atom: [(50% to sdk dev team), (10% for discord ops team), (40% for docs upkeep)]
- instantiate the ibc forwarders and advance their state machines until respective ICAs are created on both the hub and osmosis
- then the flow begins:
- a flow of native remote chain tokens starts dripping into our forwarder ICAs
- forwarders are ticked, IBC-sending the tokens to the protocol guild splitter contract
- protocol guild splitter is ticked, distributing the funds according to the split on a per-denom basis
in this test we perform 4 drips of 10 tokens from osmosis, and 8 drips of 10 tokens from the hub. means there are 40 osmo and 80 atom to distribute. given our split configuration, we expect:
- cosmwasm maintainer to have ( 8 uosmo, 0 uatom)
- sdk dev team to have (28 uosmo, 40 uatom)
- bug bounty to have (4 uosmo, 0 uatom)
- discord ops team to have (0 uosmo, 8 uatom)
- docs upkeep to have (0 uosmo, 32 uatom)