fairDataSociety / bounties

Bounties issued by Fair Data Society.
4 stars 1 forks source link

[BOUNTY] Social Archive x GetLogin.eth Challenge #1

Open crtahlin opened 2 years ago

crtahlin commented 2 years ago

Motivation / background / user story:

Personal data includes social data, and must be freed from corporate platforms to restore an individual’s agency over their data. As part of this Fair Data based mission, Social Archive is a dapp that allows users to store and browse their Twitter archive publicly on Swarm.

By integrating with GetLogin.eth, Social Archive can empower users to emancipate their data and make a private copy secured by Swarm. This will enable users to reserve consent to access their data for users and platforms as they see fit.

Why GetLogin.eth? GetLogin.eth will provide the functionality for user management. By offloading this feature from Social Archive, user management can be scaled out and enhanced independently. This opportunity also provides both projects an opportunity to define common interaction models and interfaces that can be used as a baseline.

Tasks and Approving criteria

Details

Submission Requirements

For this prize you must open a PR with the following:

  1. Integrate authentication with GetLogin.eth
  2. Allow user to upload their twitter archive in a private space
  3. Allow user to browse their private archive
  4. Public user cannot view a private archive
  5. Specific archive on Swarm (and associated hash) should be privately associated with the user’s login/address.
  6. Logged in user should still be able to access public archives.
  7. Add test cases to validate the functionality
  8. Along with the PR please submit a recorded demonstration of the working solution.

Additionally, in keeping with the Social Archive project, the submission must be:

Other Criteria

Timeline and compensation

It is estimated this should take 20 hours to complete development. 5 hours to complete the tests. Upon submission a meeting to review will be required, with one round of feedback, that could take up to 10 hours to complete.

Compensation: In BZZ tokens in amount of 1500 DAI at the date of payment (as of the price of BZZ / DAI on the day of the payout as determined by Fair Data Society).

Deadline: 2 calendar weeks after approval.

References

Key Resources

Social Archive dapp - https://socialarchive.info/ code - https://github.com/codiak/socialarchive-dapp

GetLogin.eth dapp - https://getlogin.org/ code - https://github.com/GetLoginEth/login

Use the Fair Data Society Discord for more information and support.

Mind the Fair Data Society Principles in your tasks.

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 1 week, 4 days ago. Please review their action plans below:

1) imkrish7 has applied to start work _(Funders only: approve worker | reject worker)_.

Integrate get login authentication to provide an upload option to archive Twitter. 2) sambhavanand has applied to start work _(Funders only: approve worker | reject worker)_.

I'm an engineer at a public tech company with 2+ years of experience writing fintech apps. I've started working on some web3 stuff and would love to showcase my skills here 3) danjaymd1 has applied to start work _(Funders only: approve worker | reject worker)_.

I will work hard and earn these no bullshit 4) ginanisque has been approved to start work.

Work plan

Learn more on the Gitcoin Issue Details page.

ginanisque commented 2 years ago

Hi. I just wanted to expand on my work plan, specifically storage of the encryption key. I did consider storing the key on swarm, but the token to retrieve the key would have to be stored on the app, and even with env variables, that retrieval token could be gotten by someone looking hard enough. I figured that if there was a tiny server instance that only returned the key if a request came from a specific domain, that would keep sensitive data from the dapp.

IgorShadurin commented 2 years ago

Hi. I just wanted to expand on my work plan, specifically storage of the encryption key. I did consider storing the key on swarm, but the token to retrieve the key would have to be stored on the app, and even with env variables, that retrieval token could be gotten by someone looking hard enough. I figured that if there was a tiny server instance that only returned the key if a request came from a specific domain, that would keep sensitive data from the dapp.

Hi. The data could by encrypted asymmetric (example https://github.com/pubkey/eth-crypto). And decrypted with app private key received from GetLogin.

ginanisque commented 2 years ago

Thank you @IgorShadurin So my updated workplan includes using the eth-crypto package to encrypt key and key will be stored on swarm store.

ameer-clara commented 2 years ago

@ginanisque we are reviewing your plan. Message me on discord Ameer

ginanisque commented 2 years ago

@ameer-clara @crtahlin I have finished this but there is no way to submit. Pls check my PR here: https://github.com/codiak/socialarchive-dapp/pull/88

ginanisque commented 2 years ago

Here is my video for socialarchive_getlogin https://youtu.be/PmrjOqyY-i8

crtahlin commented 2 years ago

@ginanisque please try submitting again, the submission deadline has been extended.

gitcoinbot commented 2 years ago

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


Work for 2534.2743 BZZ (1500.00 USD @ $0.52/BZZ) has been submitted by:

  1. @ginanisque

@fairdatasociety-github please take a look at the submitted work:


ameer-clara commented 1 year ago

It looks like there were several overides, including the existing readme. Can you please describe what you did and which files were modified and what was the usecase you completed.

Thanks,

Ameer

On Sat, Oct 1, 2022 at 8:16 AM ginanisque @.***> wrote:

https://github.com/ginanisque/socialarchive-dapp Please check my submission. Thanks

— Reply to this email directly, view it on GitHub https://github.com/fairDataSociety/bounties/issues/1#issuecomment-1264395251, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOQPKPZQDIW6NZLASJZCIIDWBBIWHANCNFSM5SBHNOVQ . You are receiving this because you commented.Message ID: @.***>

ginanisque commented 1 year ago

Will do, thanks!

On Wed, 5 Oct 2022, 8:34 am Crt Ahlin, @.***> wrote:

@ginanisque https://github.com/ginanisque please try submitting again, the submission deadline has been extended.

— Reply to this email directly, view it on GitHub https://github.com/fairDataSociety/bounties/issues/1#issuecomment-1268061358, or unsubscribe https://github.com/notifications/unsubscribe-auth/AREWJ5VGTXRXD4YUMGI2VETWBUVRVANCNFSM5SBHNOVQ . You are receiving this because you were mentioned.Message ID: @.***>

ginanisque commented 1 year ago

I added login capabilities with getlogin, and private archive upload using tokens retrieved during (getlogin) authentication

ameer-clara commented 1 year ago

Thanks Gina. Will review by end of the week. We’re at Devcon.

On Tue, Oct 11, 2022 at 9:37 AM ginanisque @.***> wrote:

I added login capabilities with getlogin, and private archive upload using tokens retrieved during (getlogin) authentication

— Reply to this email directly, view it on GitHub https://github.com/fairDataSociety/bounties/issues/1#issuecomment-1274801331, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOQPKPYZ5DCVMLQZZPJ23HDWCV3TJANCNFSM5SBHNOVQ . You are receiving this because you were mentioned.Message ID: @.***>

ginanisque commented 1 year ago

Ok. Thanks.

ginanisque commented 1 year ago

Override is fixed.

ginanisque commented 1 year ago

Hi. The build fails on warnings. Unfortunately, there are some peer dependency issues and an issue with the fairdata/bee package. Those don't seem to be affecting much though. There were some linting errors earlier which I have fixed.