Decentralized git-based storage on IPFS with diff-based versioning
This project allows you to store your code on decentralized storage safely. Project's GitHub Action picks up your code every commit and sends it to the server, generating and storing diffs in the encrypted format on the IPFS. The application is accessed both directly using the wallet with Metamask and through GitHub Action, so it uses different tokens for programmatic access, data encryption, and user access.
This project uses Filecoin for data manipulations, SIWE EIP-4361 for authentication to the application, AES for the files encryption, Metamask SDK, and w3s to interact with IPFS. The GitHub Action is written in JS, the backend is written in Go with Gin and the frontend is done using TypeStript with React.