# 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