A cross-chain DAO framework that allows synchronization across multiple EVM networks.
- Gov contracts (Hardhat)
- Documentation
- Gov UI
- Gov UI repo
- Gov Deployer
- Gov Deployer repo
- Example DAO on Tally
Cross-chain Gov enables DAOs to manage operations across multiple blockchains while maintaining consistent governance parameters, membership, and decisions. The system uses a home chain as the source of truth, with cross-chain proofs to synchronize state changes to foreign chains.
Provide a coordination tool that fits the needs of regular users.
- Synchronization of cross-chain governance parameters
- Non-transferable membership NFTs with voting capabilities
- DAO manifesto management across chains
- Secure proof generation and verification for cross-chain operations
bun iforge buildforge testRun the setup-chains.sh script:
chmod +x setup-chains.sh
./setup-chains.shThen deploy the factories:
forge script script/DeployFactories.s.sol --rpc-url local_optimism --broadcastChange the factories contract addresses in script/DeployDAO.s.sol and deploy your DAO:
forge script script/DeployDAO.s.sol --rpc-url local_optimism --broadcastPropose:
cast send <GOV_CONTRACT_ADDRESS> \
"propose(address[],uint256[],bytes[],string)" \
"[<GOV_CONTRACT_ADDRESS>]" \
"[0]" \
"[$(cast calldata "setManifesto(string)" "QmNewManifestoCID")]" \
"New CID" \
--private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 \
--rpc-url local_optimismGet proposal ID:
cast call <GOV_CONTRACT_ADDRESS> "proposalIds(uint256)" 0 --rpc-url local_optimismYou can reach out to Julien on Farcaster, Element, Status, Telegram, Twitter, Discord, or LinkedIn.
I want to thank Paul Razvan Berg for his work on the Foundry template we used.
GPL-3.0