ceramicnetwork / .github

Home of the Ceramic Protocol
http://ceramic.network
363 stars 44 forks source link

Create a Superfluid and addressBook Ceramic Datamodel integration #215

Open mattdavis0351 opened 2 years ago

mattdavis0351 commented 2 years ago

Prize Title

Create a Superfluid and addressBook Ceramic Datamodel integration

Prize Bounty

5,000 USDC

Challenge Description

Integrate the Ceramic addressBook datamodel into Superfluid. The most useful place for this integration is within the Superfluid Console itself. The Console is a tool that's really useful for interacting with Superfluid, and it has a feature which allows you to create an address book to manage different accounts you're working with across EVM chains.

Datamodel information can be found below:

address_book.json ```json { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "title": "AddressBook", "required": ["total_cnt", "contacts"], "additionalProperties": false, "properties": { "total_cnt": { "type": "integer", "description": "The total number of contacts", "default": 0 }, "contacts": { "type": "array", "default": [], "items": { "type": "object", "required": ["name", "wallets"], "additionalProperties": false, "properties": { "name": { "type": "string", "description": "The contact's name", "default": "" }, "wallets": { "type": "array", "description": "Collection of the contact's wallet addresses and respective networks", "default": [], "items": { "type": "object", "default": {}, "required": ["walletAddress", "network"], "additionalProperties": false, "properties": { "walletAddress": { "type": "string", "default": "" }, "network": { "type": "string", "default": "" } } } }, "avatar": { "type": "string", "description": "Optional URI of user avatar", "default": "" }, "tags": { "type": "array", "description": "Optional tags for the contact", "items": { "type": "string" }, "minItems": 1, "uniqueItems": true }, "data": { "type": "object", "description": "Fields to include optional arbitrary data", "properties": {} } } } } } } ```
DIDToAddressBook.json ```json { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "title": "DIDToAddressBook", "required": ["mapping"], "properties": { "mapping": { "type": "array", "items": { "type": "object", "required": ["user_DID", "address_book_streamID"], "properties": { "user_DID": { "type": "string", "description": "The user's DID", "default": "" }, "address_book_streamID": { "type": "string", "description": "The streamID of the Address Book associated to the user", "default": "" } } } } } } ```
model.json ```json { "definitions": { "myAddressBook": "kjzl6cwe1jw149hy5kge1gqmp669kvn2c0xmnrr109wajqrwteg9mdmlalzaku4", "DIDToAddressBook": "kjzl6cwe1jw147ff7ga8wa97ytivguq3cb2umpwkvdbuyydx7drpnaitmtvhx8r" }, "schemas": { "AddressBook": "ceramic://k3y52l7qbv1frxycyoblevfvx12ws5t0iuqmrwiadl36p20ectvw9yuhs4g9uruv4", "DIDToAddressBook": "ceramic://k3y52l7qbv1fry9pcj5rymkn9686buqtmaley7qujeyd4atyy2huvrzumsc9jc2kg" }, "tiles": {} } ```

Submission Requirements

Judging Criteria

Winner Announcement Date

June 4th, 2022

Resources

gitcoinbot commented 2 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This issue now has a funding of 5000.0 USDC (5000.0 USD @ $1.0/USDC) attached to it.

gitcoinbot commented 2 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work has been started.

These users each claimed they can complete the work by 2 weeks, 1 day ago. Please review their action plans below:

1) soheil555 has started work.

Integrate the Ceramic addressBook datamodel into Superfluid 2) gsusin has started work.

Use Ceramic Datamodel to store Superfluid Console AddressBook 3) kelvinpraises has started work.

This is an dashboard integration into superfluids console, the dashboard allows users greater control over their ceramic address books 4) erozankurtas has started work.

About Web3Graph As an open-graph protocol specifically for the Web3.0 era, Web3Graph focuses on providing the Web3.0 natives with graph information, serving Web3.0 developers with a fast and accurate platform to exchange and present information and data for Web 3.0 applications. Based on smart contracts and a powerful off-chain event engine, Web3Graph is empowered for providing the event-driven open graphs for developers and decentralized applications.

The developers can directly integrate the Web3Graph Protocol to build their own project functions and grasp the graph content of events and relationships generated by existing Web3.0 apps on Web3Graph, jumpstarting their own applications. The Web3Graph not only provides social graph content for social App developers, but also sets a unified, open and secure data standard for future Web 3.0 dapps, providing a data foundation for GameFi, DeFi, SocialFi, DAO, etc.

Website:https://web3graph.io/ Twitter: https://twitter.com/web3graph Discord: https://discord.gg/vuffYdhWNf Telegram group: https://t.me/Web3Graphchat 5) kristian-zf has started work.

Storage chains are a very important infrastructure, there will be a lot of precious things waiting to be discovered on that, so we are building the web search engine to let user access the web3 world. our vision is: Decentralized propagate of civilization. demo : https://2sqrrcokoj3mwknkznq4euffpkas3nttqpeas3v3qxvomzsb.arweave.net/1KEYicpydsspqsthwlCleoEttnO-D_yAluu4Xq5mZB8/ 6) archenetwork has started work.

Arche is a community oriented space for game enthusiasts for a better Web 3.0 experience. We aims to bring good Web3 games to people and bridge the connection amongst GameFi players to enjoy, earn, create, govern and assembling those to build a better game Metaverse and society.

Learn more on the Gitcoin Issue Details page.

NftTopBest commented 2 years ago

Hi @mattdavis0351 Is that we only build on the Superfluid console project? As me maybe build it on my Web3NFT.Social platform that user can manage the address book on my platform but it will use the Superfluid and Ceramic sdk.

mattdavis0351 commented 2 years ago

@NftTopBest you're more than welcome to incorporate these data models and ceramic into your project.

The bounty will be awarded for integration into the superfluid console though.

ghost commented 2 years ago

Hi @mattdavis0351 Sorry, I'm new here.

What is the use case of the DIDToAddressBook schema? Couldn't the user gets another user's address book if the user only knows another user's DID?

Thanks.

mattdavis0351 commented 2 years ago

@soheil555 you're understanding that correctly. If you know the DID then you can absolutely look up the data since the data is public.

You cannot write changes to the data unless the DID is authenticated however.

gitcoinbot commented 2 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work for 5000.0 USDC (5000.0 USD @ $1.0/USDC) has been submitted by:

  1. @carlbarrdahl
  2. @soheil555
  3. @kristian-zf
  4. @kelvinpraises

@mattdavis0351 please take a look at the submitted work:


gitcoinbot commented 2 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


The funding of 5000.0 USDC (5000.00 USD @ $1.0/USDC) attached to this issue has been approved & issued to @kelvinpraises.