Skip to content
This repository has been archived by the owner on Jun 12, 2022. It is now read-only.

3,000,000 HYDRO to create a Social Media dApp Smart Contract for Snowflake (ERC-1484) #247

Open
mitdralla opened this issue Jan 16, 2019 · 4 comments
Labels
🔥 In Development A task that is currently assigned and being worked on. Solidity

Comments

@mitdralla
Copy link
Contributor

mitdralla commented Jan 16, 2019

Project Details

3,000,000 HYDRO to create a smart contract that ties Social Media accounts to Hydro Snowflake (ERC-1484). This utility smart contract can be referenced by other dApp developers and designers in future builds, for example, to build a credit scoring dApp, lending dApp, and other applications that require social data to make decisions.

Problem Statement:

  • Social Media has become far-reaching in its functionality, and accordingly, most individuals manage multiple Social Media accounts.
  • To some extent, the challenges of managing multiple accounts are mitigated with features such as one-click log-in or staying logged in on a device; however, this still generally means a user must maintain password information with all these accounts and provide this information to multiple third-parties to store.
  • Moreover, the multitude of new accounts becomes apparent when new connections are formed. These connections need to be made across multiple platforms with many requests because currently, in the absence of a blockchain-based identity, a user would need to trust a third-party with their login information to achieve cross-platform operability.

dApp purpose:

  • Social media accounts are each a form of an identity that carries meaning in the real world. Social proof is increasingly being used in the financial world in applications that require credit scoring, lending profiles, mortgage approvals, and debt documents. Universities attended, clubs/alumni associations, meetup groups, and other data scraped from social media can be important to businesses and governments.
  • These specifications are written for a blockchain developer to create a dApp that ties a user’s Facebook, Github, Twitter, etc profiles to their snowflake on the Ethereum blockchain.

Solution:

Create an Ethereum smart contract on top of Hydro Snowflake (ERC-1484) that connects users’ Snowflakes with the log-in APIs of the corresponding accounts and recognizes successful logins to verify ownership. It should also observe a signed message from the user to verify the user’s ownership of a snowflake before storing info on-chain for that user.

  • Once the user’s data ownership of these accounts is confirmed, it will be stored on-chain.
  • Snowflake owners should be able to set this dApp as a resolver for their snowflake

Other Details

What is the development you want done?

Solidity code, in the form of an open-source smart contract, deployed to the Hydro Blockchain GitHub repository for public use.

  • Set resolver
    • This should set your dApp as a resolver for the user’s snowflake by calling addResolvers function on the Snowflake smart contract. We will provide materials to walk you through how to set a dApp as a resolver.
  • Add to Snowflake
    • Each logo/link clicked on the page should make a call to the corresponding log-in API for that social media platform and allow the user to enter their credentials.
    • Once the user is logged into a platform, the user shouldn’t be able to achieve any functionality on the platform through the dApp. We simply need to store a record in the session of which applications they were able to successfully log in through.
      • Thus the session will have variables stored as follows: facebook_username, snapchat_username, github_username, etc.
        *When the user has completed logging in to whichever accounts they would like to tie to their snowflake, they should be able to connect to their Metamask which should have an owned Snowflake account logged in. They will need to transact, which should attach the list of proven log-in accounts to the user’s Snowflake.
  • Remove from Snowflake.
    • An analogous process to the above should be available to the user to remove accounts from the storage of the dApp’s Smart Contract.

What are the deliverables?

Solidity code, in the form of an open-source smart contract, deployed to the Hydro Blockchain GitHub repository for public use.

Timeframe?

We propose one month as the timeframe for completion of this task.

Submission process?

First, comment on this issue to declare your willingness to complete the task. Next, fill out the Social Media dApp Smart Contract Claim Form. We will evaluate candidates factoring in their qualifications, Github activity, and the order in which they expressed interest.

Oversight Process

One of the DAs will be assigned to oversee the completion of this task once it’s awarded.

Reward Structure

Once you have been selected, you will have one month to complete the task. The time frame begins as soon as we award the task to the candidate by communication within this thread.
During this time we will be able to provide some support around questions about the workflow on Discord.

During this time the candidate needs to update the codebase regularly in a subrepo of our official Github. This will be setup and conveyed to the candidate by the assigned DA.

If the task is not completed within the timeframe we reserve the right to offer an extension, or transfer the task to another candidate. If no extension is granted, then we reserve the right to continue on the codebase committed. The fractional disbursement for it, if any, would be given at our discretion.
Once the task is completed we will test the plug-in for efficiency and whether or not it correctly incorporates the Hydro workflow. If we approve the plug-in, we will then send you 3,000,000 Hydro.

@mitdralla mitdralla added Open Request The bounty is available to be claimed Solidity 🔥 labels Jan 16, 2019
@shahthepro
Copy link

Hey @mitdralla

I'm interested in working on this one.

@jagamypriera
Copy link

Hi @mitdralla
I am willing to complete this task

@mitdralla
Copy link
Contributor Author

This task is assigned to @shahthepro. Please be on the lookout for an email with next steps.

@mitdralla mitdralla added In Development A task that is currently assigned and being worked on. and removed Open Request The bounty is available to be claimed labels Apr 10, 2019
@shahthepro
Copy link

Hey @mitdralla

I haven't received any email yet.

@HydroBlockchain HydroBlockchain deleted a comment from kekek27 Jun 9, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
🔥 In Development A task that is currently assigned and being worked on. Solidity
Projects
None yet
Development

No branches or pull requests

3 participants