# Guide
This section provides a simple walkthough designed to display some of the features that are part of the Voyager DAO. Before we get started, you will need to install the Near CLI (opens new window). Then clone the repository (opens new window) and cd
into the directory.
- Login to your account. If you haven't set up one you can create a testnet account (opens new window). For this guide you may want to create a couple if you want to experiment with adding and removing members.
near login
- Deploy and initialize the voyager factory. We are going to use
CONTRACT_ID
to represent the account holder. You can set this up, for example, by runningCONTRACT_ID=voyager.testnet
.
near deploy $CONTRACT_ID --wasmFile=factory/res/voyager_factory.wasm
near call $CONTRACT_ID new --accountId $CONTRACT_ID
- Create a DAO. Let's first define the council as consisting only of the
CONTRACT_ID
account.
ARGS=`echo '{"config": {"name": "genesis", "symbol": "GENESIS", "decimals": 24, "purpose": "test", "bond": "1000000000000000000000000", "metadata": ""}, "policy": '["$CONTRACT_ID"]'}' | base64`
Now use the factory to initiate the dao
near call $CONTRACT_ID create "{\"name\": \"genesis\", \"args\": \"$ARGS\"}" --accountId $CONTRACT_ID --amount 5 --gas 150000000000000
The commands should return true
at the bottom if it passed. You can further validate it by running near view genesis.$CONTRACT_ID get_policy
or to check all the DAO's the factory has built near view $CONTRACT_ID get_dao_list
.
- Create a proposal. First lets name our dao
DAO=genesis.$CONTRACT_ID
. This proposal looks to add a new member to the council.
near call $DAO propose '{"description": "test", "submission_time":"120000000000", "instructions": [{"AddMemberToRole": {"member_id": "another-account.testnet", "role": "council"}}]}' --accountId another-account.testnet --amount 1
← Introduction Features →