zDAO-sdk with snapshot
This repository contains the sdk to associate DAO in snapshot.
zDAO has multiple associated zNA, this association is defined in ZDAORegistry
smart contract.
To use zDAO with sdk
- Create ENS and create a space in snapshot.
-
create ENS: https://docs.snapshot.org/spaces/before-creating-your-space
-
create space: https://docs.snapshot.org/spaces/create
When create a space in snapshot, should use
erc20-with-balance
strategy with voting token.
-
Register zDAO and associated zNAs in
ZDAORegistry
contractENS and zNA can be different strings, one zDAO can have multiple associated zNAs, multiple zNAs can point to the same zDAO. Smart contract is using uint for ENS and zNA.
- generate label hash of ENS: https://thegraph.com/hosted-service/subgraph/ensdomains/ens
- generate zNA id: https://github.com/zer0-os/zNS-sdk
Functionality Requirements
- Create zDAO from parameters
- List all the associated zNAs
- Get zDAO by associated zNA
- List all the assets(coin, collectibles) of zDAO from associated Safe Global
- List all the transactions of zDAO from associated Safe Global
- List all the proposals of zDAO from snapshot
- Create a proposal of zDAO with the
erc20-with-balance
strategy which can transfer voting token to recipient - List all the votes and voting result of proposal
- Cast a vote on proposal who has holding of certain amount of voting token
- Execute a proposal by Safe Global owners .