๐ŸŒฑ Introduction

Welcome to your new favorite rabbit hole. This doc will offer you a basic overview of the different concepts that make up SourceCred and provide you with links to additional documentation so you can keep exploring and feeding your curiosity.

We hope you enjoy the journey.

So what IS SourceCred?

SourceCred (in the most basic sense) is a technology that makes the labor of individuals more visible and rewardable as they work together in a project or community. The goal of SourceCred is to use this technology to make rewarding labor as nuanced as human contribution often is. We hope to be one piece in the puzzle of a healthier future where systems serve community members, where financial maximization isn't the end-all be-all goal, and where wealth actually flows to those who are creating the value in our world.

SourceCred's Core Concepts

Cred

SourceCred uses an algorithm to determine how much value a contribution or contributor added to a project overall. When a contribution is made to a project, SourceCred's purpose is to "see" that contribution and assign it an amount of "Cred" based on how much value it brought to the project as a whole.

That Cred flows from the contribution to all the people and other contributions that supported it. In this way, you can imagine how a project could be represented as a "node graph" made up of contribution and people dots (aka "nodes") connected by lines (aka "edges") that flow Cred around to the nodes based on what supported what. The more edges one contribution has to other important contributions in the project, the more Cred is going to have an opportunity to flow to it along the edges. In this way, it's easy to tell by the Cred score which contributions (and contributors) are truly foundational and support future work in the project.

So how does an algorithm determine how much someone's work is worth in the bigger picture of a project? Sounds a little dystopian, right? The algorithm uses what we call "Weights", which are a set of rules stating which types of contributions are worth what amounts of Cred. The Weights for Cred distribution are decided by each community individually, thereby giving every community the opportunity to decide what it values and which actions uphold those values as they work together to create something. Every community using SourceCred can decide for themselves what is valuable and deserving of Cred, and what is not.

Cred is "non-transferable" in that you cannot sell your Cred, or buy someone else's Cred. It is solely a representation of where value in the project has been created.

If you want to dig deeper into the nuances of Cred, check out our How Cred Works documentation.

Grain

On its own, Cred may be a nice signal of what is valuable and who is really doing the work to make your project successful, but it's hard to pay rent or buy dinner with a Cred score. That's where "Grain" comes in.

Grain is a project-specific digital currency which is minted and distributed to contributors who have Cred in that project. Your Grain is tied to your Cred; as you earn Cred, you also earn Grain. Unlike Cred, Grain is a form of currency and is meant to be transferable both inside and outside of the project.

Ways you might end up with Grain in a project that's using SourceCred:
  • You worked directly as a contributor, earning Cred -and therefore Grain- in that project.
  • You bought Grain with another valuable currency (like ETH or Dollars) from a contributor in that project.

So how is Grain useful? The transferability of Grain makes it a powerful tool in a number of different ways depending on how your project and/or community is operating. Perhaps you have funding already, but don't know how to distribute it. Maybe you'd like to use it as a tool for governance. Or maybe you'd like a way to allow people outside the project to financially support what you're doing by buying the Grain.

Part of what makes Grain (and SourceCred) so powerful is that it can be applied in many different ways based on the needs and parameters of the community.

Examples of how a project might use Grain:
  • Paying contributors with grants or funds it already has based on Cred/Grain.
  • Creating a project-specific currency that can be traded for other forms of currency (ie: ETH or US Dollars).
  • Creating an internal currency that could be used solely for governance or to show support for features/ideas.
Examples of how an individual might use Grain:
  • Selling their grain back to the project in exchange for money from the project's budget (essentially wages you can claim by selling your Grain).
  • "Boosting" specific initiatives, ideas, goals, etc in the project by "burning" some of their Grain to make more Cred for that initiative. And creating a small flow of Cred from the initiative back to themselves as a bonus.
  • Selling their Grain to people or groups outside the project who would like to use it for Boosting and incentivizing certain features/decisions.

Follow the rabbit hole deeper by reading our How Grain Works documentation.

See an example of SourceCred's Cred and Grain by checking out our Cred Instance (yup, we're dogfooding!).

SourceCred's Vision

  • Outcompeting capitalism

    • Creating a system to replace capitalism is important to dismantling the harmful systems we live within
  • Creating better structures for recognizing labor that's currently "invisible"

    • The nuance of value and a wider recognition of it (eg: emotional labor)
    • Better access to opportunity
  • More equitable and ethical payment systems

    • Decoupling hours worked from money paid
    • The bias of payment and privilege of negotiation
    • Moving away from cost of replacement and towards rewarding of sustainable value created
  • Better interpersonal and collaborative tools

    • Community playbook
    • Self-directed/remote work environments become more possible
  • Growth plan and concrete strategy

    • Supporting crypto and open source to create better-functioning economic ecosystems
  • Shifting priorities in line with values on a micro and macro level

How can I engage with SourceCred?

There are two ways you can really get your hands into SourceCred.

Use SourceCred in your community:

Smaller communities with emotional maturity that have high technical understanding of software development and economics are best suited for using SourceCred in its young state. To get a better idea of whether your community would do well using this early version of SourceCred, check out our FAQ and How to Set Up SourceCred documentation.

Setting up an instance of SourceCred, reviewing the Cred calculations it creates, and playing with weights can be a great way to start evaluating if SourceCred is a good fit for you and your project/community. If we're not ready to support your kind of project yet, check back in later. We're improving all the time.

Contribute to building SourceCred:

SourceCred is dogfooding itself, meaning that we use the technology we're creating to calculate our own Cred scores and distribute Grain to those who help build and support it. If you are interested in getting involved with the SourceCred community, read through our Getting Involved with SourceCred doc and join the main conversation in our Discord.

From there, you'll be able to learn more about our community and feel out where you can best contribute. We encourage all types of skillful people to get involved; from software engineers, to artists, to economics enthusiasts, to those with emotional intelligence and "soft skills". No degrees required. So come join the conversation and see if there's a place for you to earn some Cred in SourceCred!