Our project represents a basic implementation of a decentralized Github which utilizes web3.storage (IPFS protocol) for storing files with specific commit hashes.
The inspiration behind this project was Tornado Cash which was the first piece of software to be sanctioned by the United States (and other) governments because it was suspected of being used for money laundering. Along with trying to shut down the smart contract, Alexey Pertsev, one of the authors of Tornado cash, was arrested. The project's repos were taken down by Github and the developer account was frozen.
There were legitimate reasons for using Tornado Cash, but the message from governments was clear - Governments will do whatever it takes to stop the spread of crypto.
Our goal was to showcase an MVP to what could be a decentralized usage of Git. Currently, we have a React App which utilizes API calls from Web3.storage to upload and download different versions of the same file. We keep track of the commit history by keeping track of the CID hashes which are generated chronologically as we upload files.
Our app showcases an online text-editor with a real-time diff-viewer to compare changes with any previous versions of the file which were committed. There exists a dropdown menu to select any previous version of the file with which the most recent version of the file is constantly diff'd with.
React app which utilizes api endpoints from Web3.storage API to upload/download files into IPFS.
Our goal was to showcase a very first solution to what could be a decentralized Github. Currently we have a React App which utilizes API calls from web3.storage HTTP API (a simple file storage service for IPFS) to upload and download different versions of the same file. We keep track of the commit history by keeping track of the CID hashes which are generated chronologically as we upload files.
Our app showcases an online text-editor with a real-time Diff-viewer to compare changes with any any previous versions of the file which were committed. There exists a dropdown menu to select any previous version of the file with which the most recent version of the file is constantly diff'd with.
We also send notifications on pushes to all collaborator wallets using push protocol. We plan on extending the wallet capabilities of the application to create social graphs and analytics for the decentralized developer community as we love green boxes on our github!