# SourceCred ERC-20 Token and/or DAO

**URL:** <https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263>\
**Category:** Initiatives\
**Tags:** 🏗️in-progress\
**Created:** [October 5, 2019, 8:02am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263 "2019-10-05T08:02:13Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [October 5, 2019, 8:02am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/1 "2019-10-05T08:02:13Z")

</div>

# SourceCred ERC-20 Token and/or DAO

* * *

## Status: in progress!

As per [this thread](https://discourse.sourcecred.io/t/an-erc20-that-to-track-grain/386) this initiative is in progress. @burrrata is exploring what this might look like with an [Aragon](https://aragon.org/) DAO.

  

## Champion:

@burrrata

  

## Initiative Description:

Research the feasibility of minting cred and/or Grain on Ethereum. Could be a stand alone ERC-20 contract or an Aragon DAO. The solution will need to allow Cred and/or Grain to be minted and burned in order to facilitate moving tokens from the off-chain [Credsperiment](https://discourse.sourcecred.io/t/credsperiment-system-overview/182) to the on-chain contracts and vice versa. Eventually it would be great if this process were automated and/or we could run it fully on-chain, but this initial initiative will explore simply minting an ERC-20 token that allows SourceCred members to exchange Grain for DAI without burdening @protocol or giving a cut to [OpenCollective](https://opencollective.com/).

  

## Benefits:

Self sovereign custody of Cred/Grain.

Transparency into current and historical cred minting and distributions.

Grain price discovery via [Uniswap](https://uniswap.exchange/), [Aragon Fundraising](https://github.com/AragonBlack/fundraising), or a manual exchange via the [Token Request app](https://github.com/1Hive/token-request-app/).

  

## Implementation plan:

Determine how Cred/Grain is minted/managed today.

Determine how to upgrade that to a transparent and security blockchain mechanism.

Build a prototype.

Build onboarding docs to help the SourceCred community explore the prototype.

  

## Estimated Work (hours):

5 hours research on how is Cred/Grain is managed now and potential solutions to move it on chain and back.

- spoiler alert, Cred is currently managed via [TBD](https://discourse.sourcecred.io/t/tbd-temporary-benevolent-dictator/376) and [Cred Analysis Notebooks](https://discourse.sourcecred.io/t/cred-analysis-notebooks/267)

5 hours to build a Rinkeby prototype (if all the components we need are off the shelf).

A few hours to deploy a mainnet DAO and onboard the community.

  

## Dependencies:

Rinkeby DAO

- @burrrata will set up a demo with dummy keys that anyone can interact with. If anyone wants to take control of an account on the DAO @burrrata will provide access.

Ethereum Mainnet DAO:

- SourceCred Core community members that want to participate (including @decentralion) would need to provide a public Ethereum address for the DAO to mint tokens to. @burrrata can facilitate the deployment and setup of this DAO and then transfer control to TBD and/or Grain weighted voting. @burrrata could also stay on as admin of the DAO to help onboard future users and/or updates.
- Wait for the Aragon Fundraising and/or Token Request apps to be fully audited or create a Uniswap pool with DAI and Grain.

  

## References:

Inspired by [this](https://discourse.sourcecred.io/t/credsperiment-opt-in-or-default-in/226/11) post by @decentralion

Also inspired by @Beanow’s [calling for this comment to be upgraded into a Wiki](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/7), prompting the community (or at least @burrrata) to revisit the initiative and adopt it.

[Aragon DAOs Overview](https://hack.aragon.org/docs/getting-started.html)

[CreDAO](https://github.com/1Hive/credao) is a combination of [/r/daonuts](https://www.reddit.com/r/daonuts/) and [SourceCred](https://sourcecred.io/).

  

## Contributions:

[SourceCred and DAOs: a sketch](https://discourse.sourcecred.io/t/sourcecred-and-daos-a-sketch/161)

[An ERC20 that to track Grain](https://discourse.sourcecred.io/t/an-erc20-that-to-track-grain/386)

[This comment](https://discourse.sourcecred.io/t/supernodes-moving-past-raw-activity/340/9) by @s_ben

---

<div class="post-metadata">

**Author:** ![Beanow](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/beanow/32/98_2.png) [@Beanow](https://discourse.sourcecred.io/u/Beanow)\
**Post date:** [October 5, 2019, 1:01pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/2 "2019-10-05T13:01:43Z")

</div>

If 10h is what it takes to build an experiment. It may be interesting. However, I think introducing transparent, community controlled, immutable, distributed ledgers and mechanisms is a little early for SourceCred.

SourceCred is currently not stable even on the conceptual level, let alone APIs and formats. I expect a lot of future work in maintaining such a DAO will revolve around dealing with upgrading the system over time to change and introduce concepts, update formats, add plugins, and so on.

So my current inclination is to say, interesting, but long-term?

---

<div class="post-metadata">

**Author:** ![decentralion](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/decentralion/32/7_2.png) [@decentralion](https://discourse.sourcecred.io/u/decentralion)\
**Post date:** [October 5, 2019, 1:11pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/3 "2019-10-05T13:11:57Z")

</div>

> [@burrrata](#):
>
> Determine how cred/mana is minted/managed today.

Currently the computation is done in observable notebooks, and the distributions are canoncialized by commiting them to [this repository](https://github.com/sourcecred/cred).

> [@Beanow](#):
>
> I think introducing transparent, community controlled, immutable, distributed ledgers and mechanisms is a little early for SourceCred.
> 
> SourceCred is currently not stable even on the conceptual level, let alone APIs and formats.

I quite agree with @Beanow here. Making mana/grain into a token would enable price discovery and allow new people to buy in to the community. These will be important in the future, but are likely to be distracting in the short term.

Also, I want to experiment with mechanisms where people use mana/grain as part of the SourceCred game. Keeping it an “in-house” quantity will make those integrations lower friction. (In the future, it might be that there is “staked mana” which is available in the system, and “unstaked mana” which is freely transferrable as a token, and users can choose when to stake or unstake it.)

Possibly the first step before making it into an ERC-20 token is to just give people the ability to transfer mana (to other SourceCred community members).

BTW, glad to have the initiative even if we don’t do prioritize it immediately. 🙂

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [October 6, 2019, 8:02am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/4 "2019-10-06T08:02:31Z")

</div>

So FTR it would just be the ledger of accounts and balances, but on Ethereum vs GitHub. Since that’s a manual process, the only thing that would change is that you would mint new tokens on a decentralized ledger vs a centralized one. Cred would still be calculated as is, but the entries to the ledger would be made with transactions vs git commits. Cred tokens would be non-transferable. Grain would be transferable. Really quite simple.

If now is not the time, then when? After the cred/grain supply schedule and economics are modeled?

What would be the benefit of staking vs un-staking? (dividends, voting power, etc…)

---

<div class="post-metadata">

**Author:** ![decentralion](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/decentralion/32/7_2.png) [@decentralion](https://discourse.sourcecred.io/u/decentralion)\
**Post date:** [October 6, 2019, 5:29pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/5 "2019-10-06T17:29:08Z")

</div>

One of the default workflows I want is things like users boosting with their grain or voting with their grain. It’s really easy to experiment with those experiences when using grain doesn’t require an Ethereum transaction, and we can do it all purely within SourceCred.

Consider that while we are experimenting with the interface, we could make boosting as easy as posting a special message in the Discourse. That’s nice for velocity in testing the idea.

> [@burrrata](#):
>
> If now is not the time, then when? After the cred/grain supply schedule and economics are modeled?

The main benefit of putting it on the blockchain is that you can start selling them to 3rd parties. This is both a blessing and a curse IMO. I don’t think we need to rush to it.

Also just personally, writing secure and robust smart contracts feels a bit like juggling razor blades, so I’d like to hold off on this until we’ve attracted some smart contract experts into the community.

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [October 6, 2019, 5:37pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/6 "2019-10-06T17:37:13Z")

</div>

> [@decentralion](#):
>
> One of the default workflows I want is things like users boosting with their grain or voting with their grain. It’s really easy to experiment with those experiences when using grain doesn’t require an Ethereum transaction, and we can do it all purely within SourceCred.
> 
> Consider that while we are experimenting with the interface, we could make boosting as easy as posting a special message in the Discourse. That’s nice for velocity in testing the idea.

That’s a good point! Makes sense

> [@decentralion](#):
>
> The main benefit of putting it on the blockchain is that you can start selling them to 3rd parties. This is both a blessing and a curse IMO. I don’t think we need to rush to it.

IMHO the main benefit is transparency and self sovereign custody. Markets are a plus too

> [@decentralion](#):
>
> Also just personally, writing secure and robust smart contracts feels a bit like juggling razor blades, so I’d like to hold off on this until we’ve attracted some smart contract experts into the community.

I’m not an “expert” in Ethereum contract security, but I am managing the security audit process for 1Hive’s latest project. Essentially you just need to write a reasonably workable contract, create some docs, and hand it off to a security partner. They’ll then show you the tests and processes they ran and how you can fix any bugs they found.

Also, if you’re using an Aragon DAO all the components are already audited (some multiple times), so you get security by default. No need to re-invent the wheel since all Aragon apps are just off the shelf components you can plug into a DAO.

Still not as great for experimentation as Discourd modifications, but just wanted to explain how that process works 🙂

---

<div class="post-metadata">

**Author:** ![Beanow](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/beanow/32/98_2.png) [@Beanow](https://discourse.sourcecred.io/u/Beanow)\
**Post date:** [December 8, 2019, 12:03am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/7 "2019-12-08T00:03:18Z")

</div>

@decentralion this topic needs to be turned into a wiki 😸

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [December 8, 2019, 12:14am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/8 "2019-12-08T00:14:41Z")

</div>

> [@Beanow](#):
>
> this topic needs to be turned into a wiki

Done!

Adding more words so that this is 20 characters. Are you interested in building a SourceCredDAO? 🙂

---

<div class="post-metadata">

**Author:** ![Beanow](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/beanow/32/98_2.png) [@Beanow](https://discourse.sourcecred.io/u/Beanow)\
**Post date:** [December 8, 2019, 12:17am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/9 "2019-12-08T00:17:42Z")

</div>

Thanks 😃I’m going around to make sure all current initiatives are correctly formatted, so they show up in the graph soon™.

---

<div class="post-metadata">

**Author:** ![decentralion](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/decentralion/32/7_2.png) [@decentralion](https://discourse.sourcecred.io/u/decentralion)\
**Post date:** [December 8, 2019, 9:16pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/10 "2019-12-08T21:16:44Z")

</div>

> [@burrrata](#):
>
> Are you interested in building a SourceCredDAO? 🙂

I’m very interested in making Grain into an ERC20 token. It could greatly simplify the process for contributors exchanging Grain for $ if they did it via Dai rather than via bank wires. Will write a post on my thoughts and requirements Soon™

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [February 13, 2020, 1:14am UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/11 "2020-02-13T01:14:40Z")

</div>

Update: Aragon Fundraising is now live!

Created a [demo org](https://rinkeby.aragon.org/#/slipperyslope/0xf0bd6122b50b5f2f832bb89c1340601ff9f30281/) to play around with. It’s set up so that both the bonding curve and TBD voting has the ability to mint GRN (Grain) tokens. This way if someone wants to cash out TBD can just mint them tokens and they can redeem them against the bonding curve. Also, if anyone else wants to buy Grain they are more than welcome to. The DAO is called SlipperySlope because the slippage factor on the bonding curve is removed - thus creating large amounts of slippage for large orders. If you want, however, you can set it such that the size of orders is constricted by a slippage window.

Anyways, happy to explain all that and more anytime. Also happy to host a call where I set up a new one from scratch to show you guys how everything works 🙂

---

<div class="post-metadata">

**Author:** ![mzargham](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/mzargham/32/39_2.png) [@mzargham](https://discourse.sourcecred.io/u/mzargham)\
**Post date:** [February 16, 2020, 12:08pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/12 "2020-02-16T12:08:02Z")

</div>

I would be supportive of working on SourceCred Dao as an Aragon DAO. This will offload a lot of the burden of writing secure smart contracts but it doesn’t offload the design of healthy institutional dynamics. Frankly, I think the “juggling razorblades” nature of writing secure smart contracts has largely forced the space to be dominated by the technical skills required to accomplish that feat, which are unfortunately often anti-correlated with the skills required for another kind of razor-blade juggling, design of institutions, which is inherently political economics.

I would argue that this thread merges with (and extends) this one:

> [@Setting up an Independent SourceCred Foundation](https://discourse.sourcecred.io/t/setting-up-an-independent-sourcecred-foundation/358):
>
> Shortly after SourceCred’s founding, @Protocol Labs (PL) decided to officially support the project. As part of that, I joined PL, which became the de-facto home of the SourceCred project. Since then, PL has helped the project in many ways, most notably paying me (and, for several months, @wchargin) to focus on the project full-time, providing logistical support, and acting as the initial Grain purchaser. Now that SourceCred is starting to get up and running, I think it’s time for SourceCred to …

The onus is on us to define a minimum viable institution, and then simply look to the smart contracts/tokens/bonding-curves/etc as tools automating the infrastructure of that institution.

In addition to the work on Fundraising by the Aragon Black team, I am also a big fan of the work underway by the 1hive team. Admittedly I am biased, they are working on a conviction voting implementation which is an algorithm i designed for shifting away from time boxed voting on proposals and moving towards something more like an accumulation of potential energy whereby proposals pass if and only if they surpass a particular activation energy.

> **[GitHub - 1Hive/conviction-voting-app: Aragon app used to collectively...](https://github.com/1Hive/conviction-voting-app)**
>
> Aragon app used to collectively allocate funds from a shared treasury 💧 - GitHub - 1Hive/conviction-voting-app: Aragon app used to collectively allocate funds from a shared treasury 💧

The Aragon community is doing a lot of great things to provide infrastructure for a new breed of bottom-up opt-in institutions but I think as a community aiming to use these infrastructures we have a lot to learn about institutional economics.

Some recommended reading on Institutional Economics and Blockchain here:

> **[Blockchains and the Economic Institutions of Capitalism](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3221527)**
>
> Blockchains are a new digital technology that combines peer-to-peer network computing and cryptography to create an immutable decentralised public ledger. When

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [February 16, 2020, 3:33pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/13 "2020-02-16T15:33:14Z")

</div>

> [@mzargham](#):
>
> define a minimum viable institution, and then simply look to the smart contracts/tokens/bonding-curves/etc as tools automating the infrastructure of that institution.

Yup! Totally agree. That’s the goal.

> [@mzargham](#):
>
> In addition to the work on Fundraising by the Aragon Black team, I am also a big fan of the work underway by the 1hive team. Admittedly I am biased, they are working on a conviction voting implementation which is an algorithm i designed for shifting away from time boxed voting on proposals and moving towards something more like an accumulation of potential energy whereby proposals pass if and only if they surpass a particular activation energy.

Fun fact, a DAO template that combines Aragon Fundraising with Conviction Voting is being explored! The key word here is exploration, but the nice thing about Aragon DAOs is that they’re modular and upgrade-able. This way you can mix and match mechanisms to (often) get a DAO design that does exactly what you want 🙂

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [February 19, 2020, 5:15pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/14 "2020-02-19T17:15:13Z")

</div>

Also related is [CreDAO (SourceCred + Aragon DAOs)](https://discourse.sourcecred.io/t/credao-sourcecred-aragon-daos/459), which could create a nice synergy between earning Cred and minting tokens on the Aragon DAO. Since Aragon is a modular platform this could be combined with the Aragon Fundraising bonding curve mechanism being explored in this Initiative as well. Could be great for SourceCred, MetaGame, Aragon, and lots of other people too. Then there would be an end-to-end system that allows people to earn reputation and rewards for contributions, claim those rewards on Ethereum, all while also allowing people to contribute to the project by buying Grain on Ethereum too.

---

<div class="post-metadata">

**Author:** ![insideNIMA](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/insidenima/32/651_2.png) [@insideNIMA](https://discourse.sourcecred.io/u/insideNIMA)\
**Post date:** [March 7, 2020, 2:33pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/15 "2020-03-07T14:33:38Z")

</div>

Did you write the post on reqs?™ 🙂 I’m very interested in using our native ERC-20 token ($OCEAN) vs. Dai/ETH. It’s even more skin in the game for contributors since their grains are ultimately backed by an asset that they have (in-)direct influence over …

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [March 7, 2020, 2:51pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/16 "2020-03-07T14:51:27Z")

</div>

> [@insideNIMA](#):
>
> I’m very interested in using our native ERC-20 token ($OCEAN) vs. Dai/ETH. It’s even more skin in the game for contributors since their grains are ultimately backed by an asset that they have (in-)direct influence over …

Just reviewed the Aragon Fundraising contracts and while this functionality is not exposed via the UI, the contracts permit it - so technically this is totally possible. Depending on how far we get with the AraCred demo we may or may not be able to try this out on Thursday! 🙂

---

<div class="post-metadata">

**Author:** ![burrrata](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.sourcecred.io/burrrata/32/135_2.png) [@burrrata](https://discourse.sourcecred.io/u/burrrata)\
**Post date:** [April 12, 2020, 5:58pm UTC](https://discourse.sourcecred.io/t/sourcecred-erc-20-token-and-or-dao/263/17 "2020-04-12T17:58:38Z")

</div>

> **[AraCred | AraCred](https://aracred.github.io/website/)**
>
> Aragon + SourceCred
