Coder Social home page Coder Social logo

potlock / bos-app Goto Github PK

View Code? Open in Web Editor NEW
8.0 3.0 9.0 2.08 MB

PotLock BOS (blockchain operating system - decentralized front ends) App

License: MIT License

JavaScript 64.14% HTML 35.86%
blockchain-operating-system bos direct-donations near near-protocol nearjs potlock public-goods-funding

bos-app's Introduction

PotLock BOS App

This repository holds the front-end widgets for PotLock. This project is configured as a bos-workspace.

Getting started

  1. Install packages
npm install
  1. Start dev environment
npm run dev

This will start a gateway at http://127.0.0.1:8080 which will render your local widgets. The entry point for this app is potlock.near/widget/Index.

Testing framework

This project uses playwright for end-to-end testing. These tests are located in the playwright-tests folder. please read the README to learn more about running and writing tests.

bos-app's People

Contributors

bakansm avatar codingshot avatar elliotbraem avatar itexpert120 avatar kurodenjiro avatar lachlanglen avatar louisdevzz avatar m-rb3 avatar spandan972 avatar wpdas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

bos-app's Issues

All Funding Rounds / Explore Pots Page


Problem

Need a way to navigate all funding roudns to see upcoming, active, and future rounds.

User Story:

  • As an observer I want to see upcoming funding rounds, so I can anticipate upcoming rounds to start.
  • As a supporter, I want to see recent funding pools, so I can stay up to date.
  • As a supporter, I want to categorize funding pools by the biggest and small matching pools, and also the biggest and smallest community size donations, and by the most and least supporters, so I can get a better sense of how funding and community support is being allocated. [FILTERING]

Description

A pots page, that lets user navigate past all rounds and filter accordingly

Acceptance Criteria

  • a page that shows all pots
  • ability to navigate on active rounds
  • ability to see rounds that application period is open

Limitations

  • querying all these rounds may be an issue

Resources

  • Gitcoin Rounds / Clr.fund / Pomelo.io

Explore Pots

Estimated Amount Matched Helper Component

Pass in props, funding roundID (pulls in number of contributors, amount of each contribution, total amount in matching pool, and estimates how much any amount of donation would be matched by.

  • show number of external contribution and individual contributions

Project Profile Page

Problem

Users need to be able to see a project, outside of a round. Associated rounds, and all information about a project regarding potlock.

User Story(s):

  • As a project founder, I want outcome based assessments to be linked to my project profile, so supporters can quickly assess my eligibility during governance.
  • As a project founder I want to have my social feed showing on my page in its own tab so others can keep up to date.
  • As a project founder, I want others to be able to follow me on social DB so they can get updates.
  • As an observer, See all projects that have been in funding rounds and which funding rounds they have been associated with
  • Ability to see a project page that pulls from NEAR Horizon (project members) but has additional data like funding round, donate button, and progress reports, and social feed.
  • Ability to see project page pulling data from social.near and nearhorizon.near project
  • As a supporter or user of a project (and verified human), I want to testify for outcome based assessments so projects I use can measure their impact for future rounds.
  • As an observer, I want to be able to see the total number of donors for a project.

Description

Create an all encompassing project profile pages that shows rounds, project profile from potlock, socialDB, and nearhorizon.near, attestations.

Acceptance Criteria

General

  • must be on registry.potlock.near or display error message
    BOS Profile Information
  • Pull project account information from SocialDB like name, banner and profile image
  • set fallback url for profile to potlock gradients
  • Pull information like deck and team from NEAR Horizon (if have)
  • Pull Social Feed in Feed tab from Social DB
  • Follow on social DB (if haven't already)
    Pots
  • Query active and past funding rounds project is part of
  • Distinguish if an active pot and can donate to
    Donors
  • Pull tab about donors (nice to have) -> need donors page
    Attestation
  • query all attestation from attest.potlock.near
  • attestation button
  • if not human then show how to become human "you must be human to verify"
  • if human take to attestation page
    Call To Action
  • Donate to proejct (show donation referral links)
  • Create attestation (must be verified human popup) -> goes to create attestation page with projectID preopulated if human
    For Project Owner
  • Ability to edit this page -> goes to edit project profile page
    Milestones
  • See milestones and milestone evidence submitted (use milestone cards), show project id, round id, amount associated, description of evidence. Should go to milestone card

Related Projects

  • (NICE TO HAVE): projects that are similar, in similar rounds, or just new projects. --- make this into seperate task

Limitations

  • querying different contracts
  • UI -> displaying few attestation
  • UI -> confusing call to action for attestations and user understanding how to attest
  • querying donation amount

Resources

Image

Change Project Status | ReFi Council / Admin

Problem

Currently there is no view for admins to flag or block projects in the project registry (projects are on the whitelist bby default). thies means although their is fee associated if we subsdizie this then they could spam our registry.

User Story(s):

As a ReFi Council or Admin, I want to be able to have a dashboard for changing project status, so that I can prevent for spam from showing on PotLock
As a ReFi Council or admin, I want to be able to see a unfilter project registry, so i can change the status

Description

A simple dashboard that shows projects in project registry and proposes to change status.

Acceptance Criteria

For admins

  • a view of project registry that is unfilters
    Project filter page
  • see past changes
  • see projects added through signup (by admin or council
  • see project flagged
  • filter based on project status
    On a Project Page
  • If admin or council member, ability to propose to change project status
  • drop down for graylist and spam list

Limitations

  • maybe a button in existing project registry
  • maybe need a reason to change

Resources

Image

Donor Checkout Page

Problem

Instead of paying directly donation buy donation, donors and verified humans should be able to put all their items in a cart, remove and edit this cart, and payout at once.

User Story(s):

  • As a support I want to have a cart where I can view , Ability to have a cart where an amount ee
    If in funding people should see estimated amount
  • As a supporter, I want to see a QF calculator built in as tooling across all relevant donation pages so I can accurately estimate and understand the distribution of my funds. [QF-CALCULATOR]

Description

Create a cart view where users can see both simple donations and quadratic matched donations for active rounts.

Acceptance Criteria

View

  • view simple donations
  • view quadratic funding donations
  • display total
  • display whether their is enough funding
  • show base currency
  • link to onramp solutions to top up cart if not enough
  • if round match period is over than gray out transaction and say round is over
    Quadratic funding calculation
  • See how much a project will be matched and total matching power
  • tool tip mentioning that this calculation is not finalized till the end of the found
    Edit Cart
  • Remove item from cart
  • Adjust donation amount
    Checkout
  • show total amount
  • show gas estimation in NEAR (adjust based on what is in cart / dynamic calculation)
  • gray out checkout if not enough balance
  • show someones balance
  • if someone has enough balance but not in correct currency then trigger swap (not relevant / nice to have since MVP will be in just NEAR)

Limitations

  • quadratic funding calculation might need to be separated
  • adding cart from multiple contracts may confuse things

Resources

Image

Milestone Evidence Submitter

Problem

Projects need a clear way to submit milestone evidence

User Story:

As a project, I want to ____, so that I can

Description

component for submitting evidence for a milestone

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Image

6. Chef Dashboard

Problem

Chefs need to be able to have a place where they can see applicants so there isn't a backlog.

Also, they need to calculate and set payouts once their Pot has completed.

User Story(s)

As a chef, I want to see all applications, so that I can easily filter through backlogs

Description

An applications status portal in a chef dashboard.

Acceptance Criteria

  • See applicants, associated round, and open up to application page #41
  • see approval status
  • filter by approval status
  • buttons to approve or reject only show if you are the chef of the round they applied to
  • resuse these components to show general applications page with a tab

Limitations

Resources

  • docs.potlock.io

Image

Milestone Evidence Page | Project Dashboard

Problem

After a milestone is submitted there needs to be a page to display milestones submitted in details to expand on and to link to

User Story(s):

As a project, I want to see milestone evidence that has been submitted, so that I can keep track of my progress and see the view round managers will be taken.

Description

Create a page that shows milestones

Acceptance Criteria

Milestone evidence shows everything in milestone form

  • show associated project id, submitted,
  • show reviewer (by pulling round id and chef profile needs to be dynamic because may hcange from contract)-> click and link to profile
  • Associated monetary amount with milestone
  • milestoneID and shareable link (put information in props)

Status

  • shows status (approved, not approved, and in progress, denoted by colors)

Limitations

  • how to link to related milestones, or other milestones in the round

Resources

Display Round Manager "Chefs"

Problem

Need to see all the chefs in one place

User Story(s):

As a ReFi council member, I want to see all Chefs profile, so that I can easily audit all the chefs.

Description

Page card of all chefs (could be in search)

Acceptance Criteria

  • query of all checks that check refi.sputnik-dao.near for "chef" role
  • goes to chef profile
  • sort by date joined
  • see banned chefs if removes

Limitations

  • need to decide where to put this
  • maybe difficult to see removed chefs and may require and indexer

Resources

outline links and relevant resources, references implementations

Add Global Search Component

  • search component that renders rounds (by roundname, round description), renders donors, projects, patrons, and round managers
  • tags that indicate each one
  • ability to filter by each staekholders type

Problem

Explain the problem in details

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Social Feed for PotLock Projects


Problem

After someone follows a potock project (a project in the registry) they would like to see updates from them in a feed. Also obserovors would like to see what all whitelisted projects are doing.

User Story:

  • As an observer, I want to see all projects affiliated with PotLock platform’s announcement on SocialDB, so I can have a ecosystem wide dashboard.
  • As a follow of Potlock projects, I want to see all their social updates, so I can have a personalize Potlock feed

Description

Create a feed page of all Potlock projects and ones a user is fllower

Acceptance Criteria

  • Query approved / whitelisted proejcts on registry.potlock.near and see their social feed
  • If logged in have a my feed toggle that shows project as user follows
  • Posts when you click on it goes to PotLock project profile NOT standard profile page (need to fork poset component)
  • users can comment and reply directly on feed
  • users can repost on feede
  • NICE TO HAVE: donation popup up
  • feed is based on most recent post

Limitations

  • Query api or indexers may change over time
  • new reccomendation algorithims in the future

Resources

Image

Patron Page

If someone contributes to matching round than they are a Patron. Show funding rounds affilaited with patron and percent of funding round a patron has put.

This will also be linked to when rounds show donors , patrons are logged in the navbar this is profile page link for patrons


Problem

Projects, users, and patrons themselves would like to see impact of individual patrons and history of contributing to matched rounds.

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Nice to have

  • see what came through referrals and how much a person contributed from these fees
  • see how much their donations led to generation of protocol fees.

Limitations

Resources

Create Attestation

Problem

Need to be able to attest to a project so chefs can give sbts based on attestation.

User Story(s):

As a verfieid human, I want to attset for a project from project page, so that I can easily leave an attestation

Description

Form to create attestations for verified humans for a proejct.

Acceptance Criteria

  • Can only create attestation if verified human, if not verified human link to verified human
  • required fields for creating text and title
  • optional to upload evidence uri and image

Limitations

  • need to have a create attestation on a project profile page, might be difficult to navigate from outside the page, maybe need a global create attestation for human view

Resources

BOS Notifications

Add notifications for

  • someone who donated, notify the project
  • some who applied to round, notify round manager
  • someone who milestoned approved, notify project
  • given an attestation, notify the proejct
  • need to be added to every front end component

Image

Here is iOS application and Android for BOS Notifications

πŸ“± Download now for Android: Google Play Store
🍏 Get it on iOS: App Store


Problem

Explain the problem in details

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

🟧 5. Apply to Pot - NEEDS ATTENTION

Problem

Outside of project sign up, projects need a way to apply for a pot directly.

User Story:

  • As a project, I want to be able to apply to a Pot, so that I can be eligible for a quadratic funding round.
  • As a project, I want to know whether I am able to apply to a quadratic funding round, so that I can get those criterion or i know that im not ellgible

Description

Create an easy application page that is navigable from a pot page for proejcts to apply. Also keep in mind that there will be popup for eligibility requirements and indicators for projects to sign up if not already part of proejct registry.

Acceptance Criteria

Contract

  • calls the pot contract at {potname}.pot.potlock.near in the apply round
  • check if not already applied (need to keep track of acceptance applications, but all applications)
    Eligibility
  • show what eligibility requirements are and show error if not with link to sbt
  • show a checkmark you are ellgible

Limitations

  • making application flexible so that it is not a friction potinf or projects to apply
  • separating project registry from application may hinder people from applying directly to round and may need to be considered within the same flow

Resources

Image

Image

Donor Page

Problem

As a donor, their needs to be a place where you can see donor information

User Story:

  • As a verified human support, I want to see the human check on my profile, so I know I am logged into a verified account. [HUMAN-BADGE]
  • As a donor, I want to see all my donations, so I can keep a record of all my donations.
  • As a user, I want to see the projects and amount a donor has donated too, so I can understand the causes a donor supports.

Description

BOS Profile page that shows donor related information

Acceptance Criteria

  • show all donations, simple and matched donations
  • see total amount of donations
  • see proejcts supported
  • filter donations by year (nice to have but will help with taxes)
  • filter by matched donations and simple donations

Limitations

  • querying all donations will requiring going indexer for matching rounds and some type of helper function on simple donation contract
  • estimating amounts may require an indexer to show amounts

Resources

Integrate Donation Contract As A Button on Every Project Page + Component on BOS

Problem

Right now when projects register their is no way for projects to directly support another project.

User Story:

  • As a user, I would like to donate to a cause that is not part of a funding round (general donation), so that I can support year round.
  • As a user, I would like a donation referral link, so I can earn for direct donations
  • As a user, I would like to add a simple donation to the cart, so I can
  • As a non logged in user, I would like to save a donation in my local storage so I can come back later to the cart and then make the transaction

Description

Create a donation button with an amount on each page.

Acceptance Criteria

  • every donation button
  • there is a referral button that shares the project page with donation referral link and referred in props
  • if there is referrer in props than call referral part of contract on donation and gives fee to referrer (check in conditonal of donate button
  • error check if there is not enough balance for user of this currency
  • simple donation type has a amount, token, and a contract when added to cart, as well as referral with respective fees (must be kept on front end to keep track of fees)
  • their is popup for add to cart later
  • donation contract call also integrated into cart (need to add this to cart tag) #1

Limitations

-adding add to cart later

  • leverage local storage to add donation items type in cart

Resources

Create App BOS Home Page

  • Include hero of featured pots
  • Include feature projects, with see all routing to projects page
  • include upcoming pots (empty state no pots upcoming)
  • Application to become round manager
  • Stats of projects funded, individual contributors

As an observer, I want to see the Gtihub and Socials of PotLock, so I can use the website and do due diligence.


Problem

Explain the problem in details

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Related Chefs

This component would live inside a Chef page.

  • take in propsOfChefID, take in filter type (recently added, recently active, most active, similar), number of chefs to display
  • return error if props not a chef to console
  • by default display most recently added (people have been added to chef role from ReFi DAO
  • recently active would recently active would show chefs that interacted with PotLock contracts most recently (similar to transaction page logic)
  • most active would show by who has most transactions with PotLock contract
  • similar would be a more reccomendation algorithim and is nice to have but not necessary

Use BOS Workspace to Setup PotLock Widgets Repo

Problem

Need a way to setup a BOS workspace for all components to rapidly upload multiple components, switch network and switch development account names.

User Story:

As a a developer, I want to be able to have a dev einvronment in VS code, so that I can easily switch between dev environemnts and staging accounts as well as onboard other developers.

Description

Setup BOS workspace on vs code

Acceptance Criteria

Add components based on nested components in https://github.com/PotLock/bos-app

  • make sure all components have a component ownerID and network id and staging and production accounts to rapidly switch

Limitations

  • Switching between flags

Resources

Chef Application Page

Problem

Chefs need a way to apply for role and ReFI council need an open inbound for chefs in the same place where they can propsoe to add them.

User Story:

As a ReFI council member, I want to a dashboard of Chefs, so that I can easily keep track of applicant flow

Description

Chef Application page where they do BOS post and has feed to propose to add members of dao.

Acceptance Criteria

Compose

  • Post with custom ashtag and filter
  • tag council with notification so it appears
  • ?any requirement to make post
  • format application in markdown in compose
    Feed
  • show propose to DAO as Chef for council members
  • show chef icon next to post corner if already been acceptace and dont show proposal
  • ??? Only allow to post / apply once

Limitations

Resources

  • Elliot Every.Feed

Image

Explore All Projects Bos Page

Problem

Need a way to navigate all projects in one single page

User Story(s):

As a observor, I want to see all the projects on PotLock, so that I can, potentially donate directly to a proejct.

Description

Create a project profile directory based on potlock registry that lets users explorer all projects.

Acceptance Criteria

  • Ability to set featured projects directly in code based on array for account ID
  • Ability to see all projects by filters
  • Filter by amount donated, number of individual contributors, date created and individual categories
  • pulls from project registry
  • has a create project flow that goes to project sign up flow #7

Limitations

  • filtering maybe difficult, need to hard code featured projects on component

Resources

4. Admin Manage Pot

As an admin, I should be able to manage/edit a Pot's config once it is deployed.

Create PotLock Styled Components Kit

Problem

Need a styled component library so people can easily fork and we can rapidly development components

User Story:

As a developer, I want to create PotLock styled components, so that I can rapidy prototype

Description

A set of buttons, styled componened kits to rapidly prototype bos components without repeating code

Acceptance Criteria

Outline what needs to be done

Limitations

  • Dependent on a designer

Resources

Round Manager / Chef Dashboard | New Milestones

Problem

A chef needs to see new milestones that come in from projects to effectively review, or their will be funding locked in Pot round.

User Story(s):

As a chef, I want to be able to see new milestones submitted, so that I can properly review if they meet the acceptance criterion on time.

Description

In the Chef dashboard their should be a milestones section that shows newly submitted milestones.

Acceptance Criteria

Ability to filter by incomplete milestones and recents

  • in milestone card, should show associated milestone, pot and project id
  • should be able to click on milestone submission to expanded view

Limitations

  • hard to define new milestones, unless checking since last time checked. More easy to see unreviewed mielstones by dated submitted.

Resources

Create Project Onboarding Flow on BOS

Problem

Figure out how registry.potlock.io works in tangent with NEAR Horizon and Social DB sign up (be clear about what information for each)

User Story:

  • As a project, I want to be able to easily create a project profile, so that other projects can easily discover me
  • As a project, I want to be able to be included into NEAR Horizon, so service providers and VC can discover me
  • AS a project, I want to create a social profile, so that other accounts in NEAR's social graph can leverage me
  • As a proejct, I want all the aforementioned onboarding flows to be of the same, so I can save time for onboarding as a proejct

Description

Create a project onboarding form on BOS where data leverage nearhorizon.near, registry.potlock.near, Important we get this set up because we can have our community people start to register now

Acceptance Criteria

  • onboarding form
  • calls the three contarct (social.near, nearhorizon.near, and potlock registry)
  • warning that must be signed up through project accountee
  • if already created near horizon profile, then autopopulate relevant fields and dont update this information upon submission
  • lets you know amount of gas ahead of time

Limitations

  • gas fees associated maybe a friction points
  • can use trial accounts links facilaited through a chat for this

Resources

Project Application Page

Problem

Project applications are often confused with projects themselves but need to be their own page to show associated status, but are actually associated with funding round.

User Story(s):

  • As a project, I want to see my project application in page, so that I can review what I submitted
  • As a chef, I want to see project applications in an expanded view, so that it is distinct from project and I can review depeply.

Description

This is different than actually applying to a round. This is after the form has been submitted for audting purposes and for toher people to see applications.

Acceptance Criteria

  • Display proejct application
  • Show associated round
  • Show link to associated project profile
  • show status of application (approved, rejected, not reviewed)
  • if reviewed than status

Nice to have

  • comments associated with project application (based on social graphs)

Limitations

  • adding comment
  • Resources

  • Apply to Round Flow #10

Image

Homepage Analytics Component

Problem

Users need to see social validations through on chain analytics if they want to donate

User Story:

  • As an observer, I want to see how many projects and amount of funding and supporters were affected by PotLock, so I can get a better sense of the platform’s impact.

Description

An analytics section on homepage clearly showing impact through number of proejcts & amount of funding

Acceptance Criteria

  • total amount of donors (both on general donation contract, and unique users through all funding rounds)
  • total number of projects through project registry
  • total amount raised (all amount through donations (including fees), and matching rounds with external contributions)

Limitations

  • may need indexer for up to date analytics
  • may slow down load time of analytics
  • may need to change VM for graphs

Resources

Pot Manager Page | Round Manager Dashboard


Problem

Explain the problem in details

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Image

🟧 Navbar BOS Component

Outside of a gateway, their needs to be a navbar (that can be toggled based on whther displayed on gateway) to navigate across different apps

User Story:

As a users, I want to have a global navbar, so that I can easily navigate through compoennts

Description

A BOS based global navbar

Acceptance Criteria

  • show active page if on a selected page
  • Explore, Pots, and Feeds
  • Logo goes to home page when click
  • Cart goes to cart component
  • cart updates based on how many items are in lcoal storage in cart
  • profile has drop down to show dashboard
  • click on profile then it goes to profile play
  • click on dashbaord it shows repsective dashboard
  • if no one logged in propmpt to login
  • Navbar should be sticky
  • Logged In Profile Dropdown (badges with type of stakeholders; Ex; patron, donor, cheef)
  • drop down based on role
  • if chef show Pot Manager
  • if Project show Project Dashabord
  • My Profile for Each (shows respective profile oage)
  • Patron

Limitations

  • confusion between profile built into gateway

Resources

  • Designs potlock.io/figma

Attestation page

Problem

Currently there is no way to share an individual attestation.

User Story(s):

As a project founder, I want to be able to share and access an individual attestation, so that I can easily share testimonials.

Description

An attestation page that takes an attestation id.

Acceptance Criteria

Attestation page

  • highlight project
  • highlight whether verified human
  • show link to any custom attestation schema
  • share link
  • attestationID cam map via ID in props
  • filter based on most upvoted attestations
  • ability ot upvote or downvote if human. Shows error message you must verify as a human to vote on an attestation. grays out thumsb up and down if already voted.

Limitations

Resources

Image

Global Transactions View

show all transaction affiliated with PotLock including (funding factory, pots, donations, registry)

  • registering projects
  • projects applies
  • round manages approve
  • declining projects,
  • someone donates w/o referral
  • someone donates to funding round w/o referral
  • bluk donate to everybody in round
  • new Round Created
  • Milestone Evidence submitted

Problem

Explain the problem in details

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Create Add to Cart Flow

Problem

  • Most people who are donating, want to donate to many projects, or need to top up later, so they need to save donations with amounts for later. Additionally the time someone donates and when they do due diligence on projects are at different point

User Story:

  • As an observer, I want to be able to add donations and matched donations to a cart, so that I can easily check out for later
  • As an observer, I want to be able to add a cart locally, so I can donate when I log in

Description

Create a way for users to add to a cart so donations, and matched donations will be streamlined, persistent, so someone can edit later once they are prepared to make a transaction

Acceptance Criteria

General

  • clearly show currency of donation
    Project Page
  • ability to add general donation with an amount to add to cart
  • can add to cart if no amount, but in cart will show as null

Round Page

  • add project to cart (with or without amount)

Cart

  • global cart notations in navbar
  • cart has a number indicating how many items in cart
  • cart button navigations to cart
  • ability to select multiple items in cart and remove
  • when checking out shows each seperate transaction
  • show total value of all carts
  • shows error message if not a human and has matched donations (option to remove matched donations)

Two Cart types

matched round

  • matched round show estimated amount and associated feess
  • shows associated round
    direct donations
  • show current amuont

Limitations

  • figure out when to add to cart vs when to do direct donation
  • from project page how to specify from general donation and a matching round page

Resources

  • figma file potlock.io/figma

Chef Page

Problem

In other funding applications often we cant do dilligence on a Chef, who there may be evidence of kickbacks when it comes to applications, and milestones.

User Story(s):

As a observor, I want to see a page for a chef, so that I can do dilligence.

As a council member, I want to be able to award SBTs or revoke a role, based on performance of a chef, so I can have a check and balance on Chef

Description

Page for round manager

Acceptance Criteria

  • rounds that a chef is managing
  • deicisons made regarding applciations and milestones
  • see when they joined as a round manager (check chef role on refi.sputnik-dao.near)
  • see the amount earned by a chef from Pots

If Council member

  • revoke or issue SBT

Limitations

Resources

Image

Create Page for All Pots "Matching Rounds"


Problem

Explain the problem in details

User Story:

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Create Folder Tree for BOS Components

https://ascii-tree-generator.com/


Problem

A BOS Developer needs clear heiracrchy to udnerstand how to structure BOS components.

User Story:

As a developer, I want to have a clear folder heigharchy, so that I can easily setup my BOS workspace and understand how components will be mapped

Description

Extension of sitemap but more composable components

Acceptance Criteria

  • folder setup on bos workspace
  • dependent on sitemap

Limitations

  • too granular at this point

Resources

bos-app/
β”œβ”€ type/
β”œβ”€ widget/
β”‚ β”œβ”€ attestation/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ chefDasboard/
β”‚ β”‚ β”œβ”€ createRound/
β”‚ β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”‚ β”œβ”€ managePot/
β”‚ β”‚ β”‚ β”œβ”€ approvedApplicants.jsx
β”‚ β”‚ β”‚ β”œβ”€ applicants.jsx
β”‚ β”‚ β”‚ β”œβ”€ rejectedApplicants.jsx
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ donor/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ explore/
β”‚ β”‚ β”œβ”€ featuredProjects.jsx
β”‚ β”‚ β”œβ”€ explorePots.jsx
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ home/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ navbar/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ pot/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”‚ β”œβ”€ projectPotProfile.jsx
β”‚ β”œβ”€ pots/
β”‚ β”‚ β”œβ”€ featuredPots.jsx
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”‚ β”œβ”€ activePots.jsx
β”‚ β”‚ β”œβ”€ searchPots.jsx
β”‚ β”œβ”€ project/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ search/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ transaction/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ landing/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”‚ β”œβ”€ hero.jsx
β”‚ β”‚ β”œβ”€ buitWith.jsx
β”‚ β”‚ β”œβ”€ stats.jsx
β”‚ β”œβ”€ footer/
β”‚ β”‚ β”œβ”€ index.jsx
β”‚ β”œβ”€ index.jsonc
β”œβ”€ bos.config.json
β”œβ”€ README.md

Image

Milestone Reviewer | Pot Manager | Round Manager Dashboard


Problem

Pot managers / Chefs need to review milestones in timely fashion so that projects shipping can be funded quickly

User Story(s):

As a chef, I want to see new milestones and past rejected milestones, so that I can be dilligent about projects getting funded in pots with milestones.

Description

Milestone dashboard where Chef can's directly review milestones.

Acceptance Criteria

  • allow to see milestones associated with a round
  • easy gui to approve or reject milestones
  • milestones show milestone evidence, proejct id, and date submitted, and funding associated with milestone amount
  • shows accepted and reject milestones
  • shows affilaited mileston with mielstone evidence in gui (this may need to be in another page and seperate dbtween different task)

Limitations

Resources

  • outline links and relevant resources, references implementations

Image

Image

2. Pot Detail Page

Problem

Need detailed page about funding round so their is transparency regarding applications, and call to actions for chefs, donors, patrons.

User Story:

Chef

  • As a chef, I want the public to see information about a round like round name, description, eligibility requirements like soul bound tokens, so that people know what a round is about.

  • As a chef, I want people to see financial information about a round like external contribution, the matching pool, and how much Chef and protocol makes in fees and what the rates are (with a tooltip on calculations, so their is transparency regarding financial information.

  • As a chef I want their to show the status of the round, whether it is upcoming

  • As a chef, I want donors to know they can donate and show a button for this with a referral link for fundraisers, up until the round closes, so that the matching pool can continue to increase.

  • AS a chef, I want the biggest patron logos to automatically show (pull from profile information) so that their is social validation that this round is supported, and i dont have to enter this information automatically.

  • As a chef, from the round page, I want there to be a manage button that shows so I can easily access the Chef dashboard.

  • As a chef, I want the page to specify currency of round so patrons and donors know what they need in their wallet.

  • As a chef, I want the round page to show accepted and reject applications (and that I made this decision) with reasoning, so that my decisions are transparent to community

  • As a user, I want to navigate to a pot page, so that I can see all associated criterion with a pot.

  • As an observor, I want to see analytics for donor for funding rounds (who donate the most, which set of projects they donated to, and estimated matching in real time), so I can see power users for the PotLock platform.

  • As a project founder, I want to be able to see an apply button prominent on the round (β€œpot”) so that I can easily apply to active rounds

  • As a project founder, I want to see on the round profile whether I have beenf reject or applied

  • As a project founder, when the round (β€œpot”) is active and I am in the round, i want to see how much contributions and donations came directly to my project.

Description

Create a pot page to users can navigate to a share funding rounds

Acceptance Criteria

  • See which projects are part of funding round // no need to show rejected projects
  • see cheef page with profile
  • see information about a Pot, like name, descriptions
  • See if funding round is active, open fro applications, matching round live)
  • See how much total is matched
  • see how much in external contributions (with and without matching multiplier) if the round has started
  • See manage round page if round manager
  • ability soee number of donations
  • show matched donations apge if round is open
  • See project
    Donors page
  • expand to donors (nice to have)
  • who donated the most
  • average amount donated
  • see list of donors with amount donated next to them
  • ability to go to donor profile page from view

Applicants

  • see who has applied and their applicationstatus
  • indication if project for an application to indicate this is my application (and then status) -> will also be available from project dashboard)
    Patrons
  • see patrons and how much donate. Donate patron
  • referral link to earn for bringing in patrons (tool tip on this with documentation)

Limitations

Outline any potential limitations

Resources

Create BOS Footer

Problem

People have a hard time navigating through app with such a complex sitemap

User Story:

-As an observer, I want to see the Gtihub and Socials of PotLock, so I can use the website and do due diligence.

  • As an observor, I want to see all major links and call to actions in the footer of the web app, so I have easy navigation

Description

A universal footer so people don't get lost and have better navigation ot all major call to actions and social

Acceptance Criteria

  • show social links
  • show explore pots, and explore projects
  • navigate back to home page
  • mobile responsive

Limitations

  • None to think of

Resources

🟧 Create Pot Page


Problem

Adminneed to a graphical user interface for creating a post

User Story:

As a council members, I want to be able to create a pot, so that they can set parametrs for chef.

Description

Form to create a pot and setup custom parameters. Interacts with PotFactory contract.

Acceptance Criteria

Add a create pot page

  • should specify requirements
  • see fees associated with deploying round ahead of time
  • calls pot factory contract
    Pot Customization
  • set chef
  • ability to only selef from chefs, show roles from drop down
  • set elligbility requirements (SBTs), easily choose sbts

Limitations

  • currently confusing user flow for creating a pot, as don't want a bunch of pots created by chefs. Rather flow is council creates pot then chef. Or an admin, as DAO calls maybe confusing. NEED CLARIFICATION ON THIS

Resources

Image

Create Landing Page on BOS

Problem

Create a landing page on BOS to transition from traditional potlock.io website

User Story:

As a user, I want to have a landing page, so that I can navigate to the rest of the app

Description

Landing page on BOS

Acceptance Criteria

SHould have

  • Statistics
  • amount of proejct on registyr, amount raised throgh funding pulled from on chain data
  • clear call to action to create and epxlore projects
  • explore rounds with round cards
  • footer witha ll relevant links
  • call to action to sign in

Limitations

  • intiially wont have donation informaiton

Resources

Create Component for Quadratic Calculation

Problem

Calculating quadratic funding will be too gas intensive and dependent on RPC

User Story:

As a chef, I want to view matched contributions and funding pool amount when matching round closes and calculate payouts amounts, then call the contract, so that I can calculate payouts without wasting on chain resources.

Description

Create BOS component to do quadratic calculation and calls contract

Acceptance Criteria

  • BOS component that takes current contributions from contract
  • Shows total pools, total amount in external contributions then a list of how much contributiuons, amount of direct contributions for a project, how much they are getting matched, total amount
  • shows error if round is not over (Round if snot over these are not file
  • if round is over and chef than shows initiate payouts button that calls contract

On the contract

  • Only allow chef to do this
  • ?Cool down period
  • ? simple checks like number of projects and anomaly in amount

Limitations

Resources

  • outline links and relevant resources, references implementations

Need to run logic in component https://github.com/gitcoinco/quadratic-funding/blob/master/quadratic-funding/clr.py

Image

General Profile Page

Problem

Currently those going to my profile are bounty to particular profile stakeholder pages, but a person maybe a series of different stakeholders

User Story(s):

  • As a multistakholer user, I want to have a profile page that displays information across multiple different personas, so that I can convey a holistic view of my status in potlock ecosystem

Description

Create a profile page that shows holistic view of a user that can be navigated via my profile.

Acceptance Criteria

General Profile

  • Check if a round manager, then show round manager profile unique components
  • check if have donoted, show donations
  • Check if patron, show patron profile information
    Combine Elements from each page

Limitations

  • querying whether someone is a donor will be hard

Resources

Image

🟧 Round Manager Dashboard | My Rounds / My Pots - DUPLICATE

Problem

Round managers need to query dashboards to see rounds they are admins for

User Story(s):

As a _______, I want to ____, so that I can

Description

Description of solution

Acceptance Criteria

Outline what needs to be done

Limitations

Outline any potential limitations

Resources

  • outline links and relevant resources, references implementations

Project Dashboard

Problem

Projects need a dashboard to manage interactions with potlock ecosystem

User Story:

  • As a project founder, I want to see my applications to funding rounds, and status (acceptaced or rejected), so I can stay up of funding rounds.
  • As a project founder, I want to see remaining milestones left and associated payouts, so i can claim all my funding.
  • As a project founder, I want to see whether milestones have been acceptance / rejected w/ reasoning, and be able to repaply if rejected directly from their, so I can get a beter sense of claiming rewards
  • As a project founder, I want to be able to see new impact attestations

Description

Project dashboard so project owners can login to their project account and see the status of rounds, contributionsl, and any relevant milestones for round

Acceptance Criteria

  • ability to edit profile
  • ability to see rounds applied to
  • ability to submit milestones for rounds
  • cannot submit a milestone if already submitted a milestone for round and it already got submitted
  • see total funding received from rounds
  • associated imapct attestations

Limitations

  • initially milestones wont be created

Resources

  • outline links and relevant resources, references implementations

Image

Related Pots

Problem

Users need a way to discover over pots

User Story:

As a supporter, I want to see related pots , so that I can continue to donate or compare a pot against smiliar past pots

Description

A component that takes in a pot and shows a row of related pots that link to their pages

Acceptance Criteria

  • take in round ID in props
  • show props
  • on the bottom of a Pot page

Limitations

  • initially there wont be that many pots that are active running at the same time
  • quick and lazy is to just show recent pots
  • Resources

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.