Decentralized Storage IPFS

This is a decentralized IPFS/File storage system that connects to the blockchain via web3 and requires a crypto payment fee to add your Decentralized file to the system.

Blockchain & Cloud ComputingJavaScriptMIT

Abstract

Decentralized Storage IPFS is an open-source Blockchain & Cloud Computing project. This is a decentralized IPFS/File storage system that connects to the blockchain via web3 and requires a crypto payment fee to add your Decentralized file to the system. A simple DApp to upload a document to IPFS and then store the IPFS hash on the Ethereum blockchain. Once the IPFS hash number is sent to the Ethereum blockchain, the user will receive a transaction hash. It is built using JavaScript. The complete source code is publicly available on GitHub under the MIT License, making it a useful reference for students building a Blockchain & Cloud Computing mini project or final-year project.

1. Introduction

A simple DApp to upload a document to IPFS and then store the IPFS hash on the Ethereum blockchain. Once the IPFS hash number is sent to the Ethereum blockchain, the user will receive a transaction hash. We will use Create-React-App framework to make a front-end. This Dapp works with any user that has MetaMask installed in their browser.

2. Objective

This is a decentralized IPFS/File storage system that connects to the blockchain via web3 and requires a crypto payment fee to add your Decentralized file to the system.

This project demonstrates how JavaScript can be applied to a real-world Blockchain & Cloud Computing problem.

4. Technology Stack

JavaScript

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Node.js (LTS) and npm
  • A modern web browser
  • VS Code or any code editor
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/sagar-barapatre/Decentralized-Storage-IPFS.git
cd Decentralized-Storage-IPFS
  1. Fork this repository.
  2. Clone the repository
  3. Open the folder in which you cloned the repository.
  4. Open Ganache to run your local blockchain.
  5. Run this command to build your smart contracts.
  6. Run on your local host and connect your wallet with metamask to perfrom the transactions.
  7. To start your application run the following command in your terminal.
git clone https://github.com/sagar-barapatre/Decentralized-Storage-IPFS.git
truffle init
truffle compile
truffle migrate
npm start

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add a CI/CD pipeline with GitHub Actions
  • Deploy to a public test network or cloud free tier
  • Add monitoring and cost alerts

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Why does this problem need a blockchain or cloud-native design?
  2. Explain the smart contract / infrastructure components and how they interact.
  3. How are gas costs or cloud costs kept under control?
  4. How is the system secured (keys, IAM, access control)?
  5. How would the solution scale to many more users?

9. Source Code & License

This project is developed by sagar-barapatre and published on GitHub under the MIT License. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on a Blockchain & Cloud Computing project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Blockchain & Cloud Computing Internship