Skip to content

Three2Guys/IPFS-BlockchainLib

Repository files navigation

Logo IPFS-BlockchainLib

Abstract

This project explores the design and implementation of a decentralized storage system leveraging InterPlanetary File System (IPFS), OrbitDB, and blockchain technology, named IPFS Library. While IPFS offers robust decentralized file storage, its usability is limited by the need to know file-specific Content Identifiers (CIDs) for retrieval. To address this, we integrated OrbitDB to store metadata such as file titles and authors, enabling users to search and retrieve files intuitively. Blockchain technology enhances transparency by recording user actions, such as file uploads and deletions, while a virtual currency mechanism based on Ethereum incentivizes responsible behavior and optimizes resource use. Our system demonstrates an accessible, accountable, and decentralized solution for file storage, advancing the principles of Web3. This project is the HKUST COMP4651 Fall2024 course final project.

Abstract Overview

Installation

Please refer to INSTALL.md.

Start IPFS Library

After successful installation, you could start the IPFS by the following instructions.

Open 4 seperate terminals.

  1. For the first terminal, run

    ipfs daemon
  2. For the second terminal, run

    node server.mjs
  3. For the third terminal, run

    anvil
  4. For the fourth terminal, run

    npm start

Demonstration

Full demonstration video: (https://www.youtube.com/watch?v=s6HwSukH7oA)

For demonstration purposes, we have provided a sample book: Book0.

You could also refer to the small piece demo in DEMO.md which provides instructions for key steps for installation and quickstart.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors