project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

Yes3

Yes3 is a Q&A based endorsement DApp. The endorsee-centric model lets users ask for endorsements from people they regard as qualified. Endorsements will be recorded on chain and users can display these endorsements as NFTs across all platforms.Î

Yes3

Created At

ETHOnline 2022

Winner of

trophy

🥇 Cronos — Best Use

trophy

🏊‍♂️ IPFS & Filecoin — Pool Prize

Project Description

1 What is Yes3

Yes3 is a Q&A based endorsement DApp. The endorsee-centric model lets users ask for endorsements from people they regard as qualified. Endorsements will be recorded on chain and users can display these endorsements as NFTs across all platforms.

1.1 samples

Get some sense of the kind of endorsements enabled by Yes3 through several examples:

  1. Ask “Am I an insightful thinker on Ethereum POS governance?” to Vitalik.
  2. Ask “Am I a good team mate in Eth Shanghai hackathon? “ to your teammates who won a hackathon prize before.
  3. Ask “Do you recommend me to work at Protocol Labs?” to someone working at Protocol Labs.
  4. Ask “Are you pleasant discussing philosophy with me? “ to a friend you just had dinner with.

2 How to use Yes3

2.1 Q&A as SBTs

Yes3 is Q&A based: users need to ask for an endorsement from someone.

Suppose Bob wants to get endorsed on his idea about “Ethereum POS governance”, he will first connect his wallet, use Yes3 to search and choose a question template(explained in the next section)——“Am I an insightful thinker on Ethereum POS governance?”, and mint a correspondent question SBT. Then Yes3 will give Bob a reply link. Bob sends the link to Jane, a Phd researching technology and policy at MIT and also an active twitter KOL with 20k followers.

The link consists of three choices : yes, no , i don’t know; a comment section, and a “sign” button.

Jane had a discussion with Bob on this topic, and indeed thought Bob as an expert on POS governance, so in the reply link she got, Jane connects her wallet, selects Yes, comments “You know the complexity of POS”, and signs her answer(Yes3 subsidizes the gas fee of the signature to minimize the burden of the endorser).

Bob then can update his SBT to show answers from Jane, and he can display this SBT at any platforms he like.

2.2 NFT templates

If Bob wants to ask a question that is not included in the existing question templates, he needs first to mint a new question template. Every question template is a transferrable NFT. Note that Bob does not need to own a NFT question template to ask that question(aka. to mint the correspondent SBT).

We choose to have question templates as independent NFTs for several reasons:

  1. We want users to reuse existing question templates when possible and create new question templates only when necessary, because a question asked by many would form a Q&A relation network, which could potentially be meaningful for data analytics.
  2. question template NFTs with lots of usage may have displaying value, such as the daily active askers, graph relations, famous endorsers, etc. And thus there may be people who wants to buy and own certain popular template NFTs.
  3. We may in the future, give our template NFTs owners some benefits, such as displaying their name or even ads on the template NFTs stats page, rights to participate in Yes3 governance, rights to configure the default displaying style of correspondent question SBTs, etc.

3 Why Yes3 is awesome and different

There are many SBT DApps out there including the famous POAP, so what is so different and awesome about Yes3?

3.1 Asker Centric

Yes3 is an asker-centric, endorsee-centric DApp. Because the asker is the one who owns the endorsement SBTs, we think the asker has better incentive to create this SBT. And thus we put the main burden of using Yes3 to the asker. Yes3 also gives the asker the right to choose the specific aspect the asker wants to be endorsed, and to choose endorsers who the asker believes are qualified.

3.2 Bottom Up

Yes3 is a bottom up way to distribute SBTs. Unlike dapps like POAP, which needs the project team to issue, anyone can create their own Yes3 SBTs, and get credibility from people they see fit. This feature also enables more decentralized governance in DAO, as any members can propose SBTs that they think important for the specific DAO context.

3.3 Structured Data

The design of Yes3 encourages users to generate structured data: the reuse of template NFTs, the yes, no, IDK options. The structural nature of data enables potentially useful data analytics, such as friends recommendation, jobs/candidates recommendation, soul drops, collusion detection etc.

4 Other use cases

Although we position Yes3 as an endorsement app, the multiple choices QNA format can be used for many other interesting cases:

  • asking for permissions : Am I allowed to reuse your photos in my articles?
  • asking for promises: Will you pledge 1% of your wallet income to funding public goods
  • opinion pooling: Do you prefer POS over POW?
  • off-chain event notary: Did you see UFO in NYC in Dec 2020?
  • creator content tagging: Is this article a beginner friendly solidity tutorial?

5 The vision of Yes3

We aim to build the most interoperable on-chain credential protocol. By using ERC721 standard and building permissionless protocol on-chain, we welcome anyone to access and build upon our data infrastructure. We want to use our data as the infrastructure of a credible decentralized society.

We wish Yes3 to be come a base layer for a soft credential system. The credibility of users with sufficient on chain behaviors can transfer to users without. In the future, We hope to design a mechanism to incentivize users to give honest endorsements to others(possibly penalize some proved-to-be-wrong endorsements) to extend the extensiveness of the credential network and build the foundation of decentralized on-chain society.

Our application can also serve as a cold start for SBTs and DeSoc before institution adopts. It will take a long time until off chain institutions are willing to give their certificates on chain(such as College diploma), and before that, people can use Yes3 to test our some of the vision of Decentralized society and use it as a headstart for that vision to materialize.

The prompt-answer relation can also be viewed as a basic action in web3 social networks, besides follow, like, and comment. It contains more information than the other ones but is equally easy to use & build. We aim to use this action to build up the social graph, which can be furtuer analyzed & utilized.

How it's Made

The technical framework of our project can be divided into the following parts:

  1. Smart contract
    1. We use solidity to implement 3 smart contracts: ILyonPrompt, LyonPrompt, and LyonTemplate.
    2. ILyonPrompt is the interface for LyonPrompt and defines the basic functions and events.
    3. LyonPrompt is the smart contract for individual endorsement SBTs. Using openzepplin’s ERC721 as template, we removed the transfer-related functions to make sure the token is an SBT, but by keeping the metadata-related interfaces we allow our users to showcase their NFT in all other platforms.
    4. We use Foundry to test and simulate these contracts.
  2. Frontend
    1. We use React, ethers.js, D3 graph library to build an interactive experience for our users.
    2. D3 graph is mainly used to display what we call “credential graph”: the cascading trust flowing from high-credential identity to lower-credential identity
  3. Database
    1. We currently use Google Firebase for better data query efficiency. Since we need to display graph-based data, traditional on-chain data querying does not satisfy this requirement and we have too use web2 technology to support that.

Impressive/hacky points

  • We designed a new type of interconnected NFT/SBT structure. Templates are tradable NFTs, and based on them people can mint prompt-reply SBTs. Thus, we simultaneously achieve fluid ownership and immutability of social credentials.
  • We innovatively use D3 graph to represent the endorsement network, which can be the foundation for large-scale on-chain cooperation network.

Sponsor technology

  1. IPFS: We store our all NFT images (both template and prompt) on IPFS for better decentralization.
  2. Polygon: Our smart contracts are all deployed on Polygon.
  3. ENS: We support ENS namespace on our website, so that when user connect their wallet, we will give them the option to display their ENS.
  4. Lens: We support Lens namespace on our website, so that when user connect their wallet, we will give them the option to display their Lens handle.
background image mobile

Join the mailing list

Get the latest news and updates