---
# System prepended metadata

title: Contribution Graph

---

# Contribution Graph

**What:**
- Recap discussion from Nov offsite
- Link to relevant docs

**Why:** 
- Provide enough context for Nick to start playing around with low-code graph tools + ask follow up questions

**Docs:**

- [Figma link](https://www.figma.com/file/SCH4vobcBpd4O8oxB35AxT/Contribution-Graph-Draft?node-id=0%3A1&t=sjXuabwKxzEjyd6F-0)
![](https://hackmd.io/_uploads/r1UlCB8_j.png)


**Summary:**
![](https://hackmd.io/_uploads/HyvMJULuj.png)

**Nodes:**
- Contributions
- Contributors
- DAOs

**Relationships:**

First order:
- **Contributor <> Contribution:**
    -  Contributors have agency over their contributions. They can edit/mint them, make choices about how their connectivity, and push them to DAOs.
- **Contribution <> DAO:**
    - Contributions can be associated with a DAO via two way consent; push and pull
        - Contributor: push/attribute
        - DAO: verify/accept to steward a contribution/pull 

Second order:
- **Contributor <> Contributor:**
    - Contributors are connected to other contributors via mutually associated contributions. 
- **Contributor <> DAO:**
    - Contributors are connected to DAOs through their contributions. 

**Edges:**
- (Note: we can definitely rephrase/relanguage these).
    - for linking contributions:
        - inspired/suggest or precede/follow
    - for linking contributions and contributors:
        - own/member
            - contributor owns contribution
            - contribution has contributor members
    - for linking contributions to DAOs
        - attribute/steward
            - contributor attributes a contribution to a DAO (push request)
            - DAO verifies and agrees to steward the contribution 

**Additional:**
- attest: edge(?) from contributor to contribution that they don't own
- assign value: edge (?) from DAO node to contribution that is stewarded by DAO

**Open Questions:**
- Is there a layer one and two of this graph?
    - i.e. layer one is base primitives
    - layer two is a structured collection of primitives
- What is the difference between the technical arch. representation of the database, versus graph viz for show users?

**Notes (Nick, Dec 14)**
The core idea here is that existing contribution records / representations can be viewed through the lens of various networks/graphs (We're using "graph" mainly, it looks like)?

My questions:
- How low code? Where is the main constraint coming from, e.g. is it that we want all users to be able to explore the graphs?
    - Can we just have a computational notebook with mostly black box code?
- What are the most important graph metrics here?