Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrinnnmoy/stackup
Decentralised file storage & sharing Dapp.
https://github.com/mrinnnmoy/stackup
etherjs hardhat ipfs pinata-uploading reactjs solidity
Last synced: 5 days ago
JSON representation
Decentralised file storage & sharing Dapp.
- Host: GitHub
- URL: https://github.com/mrinnnmoy/stackup
- Owner: mrinnnmoy
- Created: 2023-10-09T13:49:23.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-05T04:17:54.000Z (10 months ago)
- Last Synced: 2024-08-22T10:04:18.029Z (3 months ago)
- Topics: etherjs, hardhat, ipfs, pinata-uploading, reactjs, solidity
- Language: JavaScript
- Homepage: https://stackups.vercel.app/
- Size: 8.6 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Stackup
A De-centralized File Storage and sharing solution.
- Upload & View your important documents to and from IPFS via Pinata.
- Share those documents among selected peers and View list of Accounts.
- View images that were shared with you.## Demo Image
![Demo-Image](./demo-img.png)
## Workflow:
- Uploading to IPFS:
- Step 1: User connects their metamask account to the dapp.
- Step 2: Choose any image by clicking on "choose Image" button.
- Step 3: After choosing an image, the upload button will be enabled.
- Step 4: Sign a transaction and upload the file to ipfs (Pinata).
- Step 5: After successfull upload, you can click on "get data" button and you will be able to see the pictures you uploaded to ipfs.
- Sharing images with other users:
- Step 1: The user will be provided with a "share" button. After clicking it user can put the address of the person, whom they want to share the file with.
- Step 2: The user adds the addres and clicks on "Share" button and signs a transaction.
- Step 3: After completing the transaction the user will be able to see the list of addresses the user shared the images with in the "People with access" drop down menu.
- Step 4: Now when the other user wants to check the shared image the user can go to "share data" option and paste the address of the user, who shared the image and click the "get data" button. The image will be visible.
## Folder Structure:
- contracts: Contains the smart contract for the decentralized application.
- deploy: Contains deploy script for deploying the smart contract.
- test: Contains test sripts for the testing the smart contract.
- src: Contains the front-end application.## Tools, Languages and Frameworks used
- React JS
- SASS
- Ether JS
- IPFS
- Solidity
- Hardhat
- Alchemy## Contributions to this repo are WELCOME ⚡👋
- :art: Any improvements to the design and UI are welcome.
- :hammer: try to break the website by testing it to find any bugs. If you find any, check if there is an issue already open for it, if there is none, then report it.## Steps to be followed in order to make valid contributions to this repo 🍀
**1.** Fork the [StackUp](https://github.com/mrinnnmoy/Stackup) repo by clicking on the fork button on the top of the page. This will create a copy of this repository in your account.
**2.** Clone the forked repository
git clone "https://github.com//Stackup"
- Download and install Node JS v16.16.0
- Download and install Git.
- Go to the terminal of your code editor and run "npm install" to download packages.
- Run "npm run dev" to start a local server.**3.** Make necessary changes and commit those changes.
Remember never push anything to the Main branch.Always change your branch to "develop" using:
git checkout develop
Again check your current branch using:
git branch
It should point \*develop
Now add your changes using:
git add files-you-edited
If there are multiple files you can use:
git add .
Now create a commit message using:
git commit -m ""
**4.** Push changes to GitHub
git push origin develop
**5.** Create a Pull Request 👋
Now you go to your repository on GitHub, you’ll see a `Compare & pull request` button. Click on that button and now write a summary of what changes you have done.( Attach images if required). I will review your code and merge it if it passes all the tests.❤️