---
# System prepended metadata

title: DAO Membership
tags: [Project plan]

---

# DAO Membership

###### tags: `Project plan`

![](https://hackmd.io/_uploads/S1p0ygINo.png)

[toc]

##### Related Links
<!--
*add link to one pager (if one pager was done)*
--> 

- [govrn.app](https://govrn.app/)

## 💡 Idea

### tl;dr

Import, join, and create DAOs on Govrn. 

## 🧭 Spec

### Import DAO

- Import 3rd party DAO
- Smart manage users based on DAO membership conditions (on chain event logs)

### Create DAO

Creating a DAO basically needs a list of addresses, the admins or power users, and to be Govrn native (only available at Govrn).

- Summoners initial admin set and they choose roles etc.
- Create & invite roles. similar to :point_down: 

### Join DAO

- Off-chain members / secondary members
- finding, requesting, and joining DAOs
- Adding users by address (admin)
- Referring members (linking function)

### Goal
<!--
*1-2 lines on What problem are you solving and a proposed solution. Bullet points are fine*
Example: 
- Problem: It's hard to understand context on what to give attestations too.
- Solution: Make the experience of going through contributions for attestations fun.
--> 
- Problem: It's difficult to find other DAO's to join and it's hard to make a new DAO. Noramlly this is a manual process by Govrn or Govrn with partners. 
- Solution: A one stop shop for spin up a DAO and log contributions. 

### Scope

**Design**
- Create DAO. Forms, tool tips, initial state, start, middle, finish
- Explore DAO.

**Engineering**
- Implement create, join, and import DAO. 

**Product**
- Wireframe the user flows for landing, wallet connect, and the three paths into DAOs. 

### Completion Criteria

 1. Design for three DAO paths
 2. Implemented and tested memberships 
 3. Roll out to new DAOs with CBCE (hype mode)
    - guild and token DAOs at v1
    - Govrn-native DAOs (import and create) we'll run in parallel

### Timeline

- Design: 2 Weeks
- Build and Implementation: 2 Weeks
- QA: 1 Week
- Kickoff

#### Inspiration



## 📖 Bible

[Spreadsheet of roles and permissions](https://docs.google.com/spreadsheets/d/1YpBkibT3jpB88z2eqpX6ZabX6TAAyivG7RLxt2Ymq8Y/edit?usp=sharing)
[Figjam on user flows](https://www.figma.com/file/vVh1k3jfMP7zmIx1j7DrX6/DAO-User-Flows?node-id=0%3A1)
[how govrn thinks about DAOs](https://hackmd.io/2-940EXAQ6ulf2I4VHIyWQ?view#User-Journey-of-a-Govrn-DAO)

### Meeting Notes

[Creating Dao Feature-- product notes](/bucdAbAEQy2ScODmY6zhCQ)
[Product Palooza: Add DAO Visibility/selection For Users](/WJ91mkv9R8ywqLZlDNE3Zg)
https://hackmd.io/2-940EXAQ6ulf2I4VHIyWQ?view#User-Journey-of-a-Govrn-DAO


### Considerations

Strategy & Design considerations
- IA and flows between pages. where there is flexibility and where not. 
- Import DAO
    - Guild flow (is it oauth? are we populating a list of guild(s) )
    - DAOs link on left side and then discovery or just create DAO page is linked from profile?
- Creating a DAO
    - one page for 
- Explore page
-  

### Decisions Log

**1-19 **
- Aligned on three roles and the permisisons for each
- set up timeline for feature completeness
    - some exploration and prototyping there to do
- set up the next DAO dashbaords specs and user journeys to explore

### Open Concerns
 
 - [ ] [ticket for a table of roles](https://linear.app/govrn/issue/GOV-391/spreadsheet-of-roles-and-permissions) and pages by permisison level. this will become more useful over time. 


User permissions:

- recruit: 
    - can submit contributions to a DAO (could probably attest, but not distinguishing currently)
    - shows up in their reporting form
    - See the Public DAO Dashboard
    - Cannot attest (or see other contributions)
- member: 
    - can submit contributions to a DAO and attest to other contributions
- admin: can add members and other admins to DAO (future DAO configuration)

A user becomes this by:

- recruit: Self selected by user via the MembershipDAO Profile
- member: Admin adds via create or settings
    - For a recruit to be promoted to a member, a DAO admin has to add them as a member
        - This list can be updated continously 
    - Members can also be removed via admin DAO setting portal
- admin: another admin adds you

Spam Use Cases(for now):
- Contributor Spamming DAO with Contributions
- Admins Spamming Contirbutors by adding them to DAOs
    - Fixing via a Opt In by the Contributor 
        - **THIS IS A REQUIRED FOR A FEATURE COMPLETE**
        - The MVP requirements:
            - As a User,
                - I need to see all the DAOs I've been added to by an Admin
                - So that I can choose which ones I opt in to
            - As a User
                - I need to to be able to opt in to the DAOs I've been added to
                - So that I canchoose the DAOs I'm a part of
            - As a User
                - I need to be able to dismiss or ignore the ones I don't want to be added to
                - So that I don't keep seeing DAOs I don't want to join.
            - As a User,
                - If I've already joined as a recruit, I won't be sent an Opt In Request
                - So that I don't have the burden of being confused if Im asked to opt in after I've already joined as a recuirt (aka don't send opt in request if the user is already a recruit)
- User seeing too many DAOs in their dropdown (to avoid seeing all DAOs on Govrn)
    - Recruit solves this

## Member Privilege Narratives

RECRUIT NARRATIVE 
1. As a user, i become a recruit via the `Join DAO` module on the DAO Profile Page
2. Once I'm a DAO Recruit, I am able to:
    - Recruits should see a Public DAO Dashboard (***THIS DOES NOT YET EXIST, BUT THIS IS SOMETHING WE WANT***)
        - Could show a modified version of the current dashboard
    - Report Contributions to the DAO 
3. I'm not able to:
    - Attest to Contributions of DAO members via the UI
4. If I wanted to become a member, I'd have to reach out to the DAO Admin and ask them to promote me

MEMBER NARRATIVE
1. As a user, I become a member by either:
    - Being a recruit and having a DAO Admin add me to the DAO
    - Being added to a DAO by a DAO Admin, and Opting In to the DAO via the Opt In Table
2. Once I'm a DAO Member, I am able to:
    - See the DAO Dashboard
    - Report Contributions to the DAO
    - Attest to contributions via the UI
3. I'm not able to:
    - Have access to the DAO Settings
    - Add or remove other members
4. If I wanted to become an admin, I'd have to ask a DAO admin to add me

ADMIN NARRATIVE
1. As a user, I become a admin by:
    - Creating the DAO
    - Having a current Admin add me
2. Once I'm a Admin, I am able to:
    - Do everything a member can
    - Have access to DAO Settings
    - Add or remove DAO members
3. I'm not able to:
    - Can do eveything regarding that DAO
4. If I wanted to be promoted, nothing to be promoted too yet, you're the top.


## Future Ideas or Considerations

Join DAO Component:
- As a Admin
    - I want to see when people add themselves a recruit
    - So that I can see who is joinng and decide if we want to promote to member.
    - **NOT IN SCOPE FOR RELEASE 1**
        - explore UX on notifications
- As a DAO Recruit
    - I want to be able to see a public version of the dashboard that doesn't show any "revealing" information of members
    - So that I can see a full picture of the DAOs contributions
        - Explore wireframe and data flows for what data is most desireable for a DAO to share 