Censorship is a real threat and user's may someday lose access to the data they've contributed to social networks. As such, it's important to build fallback's that allow user's to access their data on the social network even if they've lost access to the resource.
As a User, I would like to back up my data so that I have access to the content in the case of blocking sites, because the data is mine and I should be able to access it even if I no longer have access to the resource.
Create a pipeline built from a set of independent components that observes the user's content and uploads them to the Swarm network using fdp-storage. The design of the interfaces as well as the actual modularization between these components is up to you. But remember that it is better to divide the project into replaceable components, in case one of them starts working with social networks incorrectly. Below are the suggested components:
Downloader: download user data from a specific social network.
One downloader - one social network
Must monitor user updates at least daily and send all updates to the uploader
The solution should not use third-party web services (parsers) to work with content from the social network.
Viewer: display backup data of specific social network.
The viewer should display the content stored in fdp-storage in a user-friendly way using the web interface
The documentation must describe the structure of data storage for the correct display of data
The Uploader should handle any errors or problems that may occur and continue uploading
Handling of postage stamps, etc. can be done through gateway-proxy or built into the solution
This component needs to be very much agnostic and be able to upload any type of data (images, videos, text documents, comments, reactions to the content, correspondence)
Approving criteria
A new public repo is opened with open source code and a link to the repo is in the Gitcoin issue.
Include Readme file with instructions on how to use the app
The solution should comprise of at least two independent docker containers (one of them being the Uploader) that can be chained one after the other with clear interfaces between them.
Splitting it into smaller services that do one thing would be appreciated.
The solution, whether newly created or is a modified ready-made solution maintains a mirror of a person's accounts using fdp-storage, complying with all necessary licenses.
Timeline
This bounty is estimated to take no longer than 40 hours per service.
Deadline: 3 calendar weeks after approval
Compensation: In BZZ tokens in amount of 1500 DAI for each OS implemented at the date of payment (as of the price of BZZ / DAI on the day of the payout as determined by Fair Data Society).
Bounty process
One team will be selected and approved to work on the project.
Upon completion, the bounty will be awarded to the chosen team, if the approving criteria is met.
If the approving criteria is not met, another team will be selected and approved. Consequentially the deadline will be extended.
If no project matches all the approving criteria, no bounty will be awarded.
Motivation / background / user story:
Censorship is a real threat and user's may someday lose access to the data they've contributed to social networks. As such, it's important to build fallback's that allow user's to access their data on the social network even if they've lost access to the resource.
As a User, I would like to back up my data so that I have access to the content in the case of blocking sites, because the data is mine and I should be able to access it even if I no longer have access to the resource.
Tasks
Approving criteria
Timeline
This bounty is estimated to take no longer than 40 hours per service.
Deadline: 3 calendar weeks after approval
Compensation: In BZZ tokens in amount of 1500 DAI for each OS implemented at the date of payment (as of the price of BZZ / DAI on the day of the payout as determined by Fair Data Society).
Bounty process
References
Use the Fair Data Society Discord for more information and support.
Mind the Fair Data Society Principles in your tasks.