Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AraCred Manual Mode Guide #1

Open
yeqbfgxjiq opened this issue Apr 5, 2020 · 0 comments
Open

AraCred Manual Mode Guide #1

yeqbfgxjiq opened this issue Apr 5, 2020 · 0 comments

Comments

@yeqbfgxjiq
Copy link

yeqbfgxjiq commented Apr 5, 2020

Preliminary Requirements

  • A computer
  • An internet connection
  • An Ethereum wallet with some ETH (Rinkeby or Mainnet)

Deploy a DAO

This may or may not take multiple transactions and each one might take up to a minute or more to get processed.

In the following examples we show an Aragon Fundraising DAO, but you can use any Aragon DAO you want.


Install the Transactions app

Install the Aragon CLI

Aragon CLI Setup

Install the Transactions app

# setup your environment
env="--environment aragon:rinkeby --ipfs-rpc https://ipfs.eth.aragon.network/ipfs/"

# set a variable for your DAO
dao=<your_dao_address>

# set a variable for the voting app (such as shareholders voting app in the case of
# the Fundraising Template)
voting=0x35b74057a93280eb57f9863298f6a6908b38898a

# install the app to the DAO
aragon dao install $dao transactions.open.aragonpm.eth $env

# go to https://rinkeby.aragon.org/#/<your-dao-address>/<your-voting-app-address>
# and vote on the installation 


# NOTE! You'll have to vote in the DAO to approve the installation of the app

# check the DAO to get the proxy address of the new app
dao apps $dao --all $env
=
# set a variable for the address of the proxy of the new app
app=<transactions_app_proxy_address_goes_here>

# we need to set up any permission for the app to wire it into the DAO
# (this makes it show up in the UI).
# Note: We assign to $voting the app's DUMMY_ROLE and set up
aragon dao acl create $dao $app DUMMY_ROLE $voting $voting $env

# go back again to https://rinkeby.aragon.org/#/<your-dao-address>/<your-voting-app-address>
# and vote on the permission assignation. When it's done, you will see the Transactions
# app appear in the apps' sidebar.

Set permissions to mint tokens to Transactions app

mint-token-permissions

Install SourceCred

This guide assumes that you have successfully installed Sourcecred and have it running on a forum or repo. If you are having trouble getting this to happen please see the SourceCred README or ask for help on the SourceCred Discord support channel.

On-chain Grain

# download AraCred 
git clone https://github.com/pythonpete32/aracred-cli.git

# navigate to the AraCred directory
cd aracred

# install the app
npm I

# Build the project.
npm prerelease

# link the app
npm link

# navigate to wherever you have sourcecred downloaded
cd ~./path-to-sourcecred/sourcecred

# run AraCred
aracred

# add the name of the Discourse forum you want to use to compute Cred
# note! you cannot include the https:// or have a trailing / at the end of the URL 
port.oceanprotocol.com

This will create a toMint.csv file that you can upload that file to the Transactions app.

It will also create an addresses.csv file. All you have to do is add Ethereum addresses to the column next to each name. Then run aracred addresses and AraCred will create an Aragon labels file you can upload to your DAO.

Upload labels to Aragon Client

upload-labels

While AraCred has computed the SourceCred scores, you'll still need the names and Ethereum addresses of people you want to mint tokens for. Since SourceCred works off-chain, you need to supply these yourself. Every project has a different way of curating this list (welcome bot, signup form, etc...), but once you have the list you can upload it to your Aragon DAO to display human readable names in the Aragon Client. To do this go to Settings > Custom Labels then import labels.

Upload the names and amounts to the Transactions app

Once labels are imported to your DAO, you can then upload a CSV of names and scores (created via AraCred) in order to quickly mint tokens. The Transactions app reads the names, correlates those with the labels input to the DAO, and then mints tokens for the corresponding addresses. Make sure you select the right token and voting app if you DAO has multiple.

Vote to approve the minting

vote-to-approve-minting

In most cases, the transactions app will not have the permission to mint tokens directly. If it did, anyone could mint new tokens. Instead, the Transactions app opens a vote for token holders to decide if they want to mint more tokens.

Cash out via the Grain market!

Once tokens are minted you can do whatever you want with them! Depending on the configuration of your DAO this might involve cashing them out via an integrated market, voting, or redeeming them against the underlying collateral of the DAO itself.

Resources

Here's the demo DAO that was used for this tutorial.

Here's the SourceCred repo.

Here's the AraCred CLI tool.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant