/NFT-Fabric-IPFS

rewrite erc1155 chaincode to implement NFT with IPFS as off-chain storage

Primary LanguageShellApache License 2.0Apache-2.0

System Architecture

image

Why build this app?

Demo Start

Clone repo locally

git clone --recurse-submodules https://github.com/quieoo/nft_fabric_ipfs.git

Hyperledger Fabric and IPFS docker daemon bring up

make sure docker is running

cd nft_fabric_ipfs/test-network/
./000_bringDown.sh  
./001_bringUP.sh 

This will clean the environment and build hyperledger fabric peers and ipfs docker daemon, deploy chaincode "FI-NFT"

We modify the ipfs source code so as the "add" api can serve the request of a file name located at ipfs's mount dir, this is because we can't find where chaincode VM mounted. We also modify "cat" api, so that we can check if file exist in ipfs distributed network from chaincode. Details can be found here at dev branch. We rebuild the ipfs and upload it to docker hub with "quieoo/docker-ipfs"

Start Web Server

cd nft_fabric_ipfs/web/Server/
npm install
./register.sh
node main.js

Start Vue Frontend

npm install
cd nft_fabric_ipfs/web/NFTAppOnVue/
npm run dev

Visit Web Application

http://localhost:9527

Credits

🙏 This project is a fork of hyperledger fabric SDK see docs/README.md

https://hyperledger-fabric.readthedocs.io/en/release-2.2/

base version :

curl -sSL https://bit.ly/2ysbOFE | bash -s