-
Notifications
You must be signed in to change notification settings - Fork 9
Working with DAOs
To create a DAO you will need an account with some AKROs.
-
Go to Extrinsics tab and select your account address in using the selected account.
-
Select "dao" in submit the following extrinsic
-
Insert name of new DAO and it's description in the HEX format. You can use this utility to convert ASCII symbols to HEX (please remove space symbols). Dao's name should have only 'a' - 'z', 'A' - 'Z', '0' - '9', '_' and '-' symbols. Length of DAO's name is between 10 and 255 symbols, the length of description is between 10 and 4096 symbols.
-
Click Submit button
After DAO is created you will see a DAO page with minimal balance:
- You can checkDAO stats in Chain state tab. Select dao in selected state query and select what kind of data you want to get:
-
daosCount(): number of DAOs
-
daos(DaoId): get information about a DAO. DaoId is a number, starts from 0.
-
membersCount(): number of members in a DAO
-
members(DaoId, MemberId): information about DAO member, where DaoId and MemberId is a numbers-identifiers.
Adding new members to DAO works through voting. To start the vote, you should make a proposal to add a candidate. The candidate should have an account with some AKROs. The account could not be another DAO and it could not be a member of the DAO you want to add the candidate to..
-
Go to 'Extrinsics' tab and insert candidate's address to "using the selected account", select "dao" in "submit the following extrinsic" and "proposeToAddMemeber(dao_id)" function. Then insert dao id and click "Submit Transaction".
-
You can check the status of the proposal in Chain state tab. Select dao in selected state query.
-
daoProposalsCount(DaoId) will show the number of existing proposals
-
daoProposals(DaoId, ProposalId) will show the status of the proposal in DAO DaoId: open:true/false, voting_deadline - block number when voting is over, yes_count & no_count - number of DAO members voted yes or no for the proposal).
Excluding DAO members happens through voting. Only existing DAO members can be removed from a DAO. If a DAO has only one member, this member can't be removed from a DAO.
-
Go to 'Extrinsics' tab and insert candidate's address to "using the selected account", select "dao" in "submit the following extrinsic" and "proposeToRemoveMemeber(dao_id)" function. Then insert dao id and click "Submit Transaction".
-
You can check the status of the proposal in Chain state tab. Select dao in selected state query.
-
daoProposalsCount(DaoId) will show the number of existing proposals
-
daoProposals(DaoId, ProposalId) will show the status of the proposal in a DAO DaoId: open:true/false, voting_deadline - block number when voting is over, yes_count & no_count - number of DAO members voted yes or no for proposal).
Only DAO members can participate in the vote (one vote per one proposal).
To participate in the vote go to 'Extrinsics' tab and insert your address to "using the selected account", select "dao" in "submit the following extrinsic" and "vote(dao_id, proposal_id, vote)" function, where vote is boolean (Yes/No). Then insert dao id and click "Submit Transaction".