/hyperledger-fabric-demo

Demo Hyperledger Fabric 1.1.0 project for the SoftUni Blockchain Dev Camp - Sofia - February 2018

Primary LanguageGo

Hyperledger Fabric Demo

Hyperledger Fabric project for the SoftUni Blockchain Dev Camp - Sofia - February 2018

This is a simple online seller shipment and tracking use case.

Imagine that a big online seller works with several courier companies to send shipments to their customers. Both seller and courier companies need to keep real time ledger of shipments and track their whole lifecycle from creation to delivery.

Seller needs to keep a separate private ledger of shipments for each of their courier partners and only they and the courier to have access to write to it. Other courier companies the seller works with must not have access to this private ledger.

The projects consists of the following components:

Hyperledger Fabric 1.1.0 network between the seller and one courier company (courier1).

Chaincode installed in the seller-courier1 channel.

Seller Golang API and Angular web app
Only seller can create a shipment and decide to which of their courier partners to pass it for delivery.
Seller's customers know their own tracking codes and should have a way to track current shipment location and history in real time.

Courier Golang API and Angular web app
Only courier can change the shipment state and current location, once they receive it from the seller.

Hyperledger Fabric SDK Go is used for communication between the blockchain and the Golang APIs.

Acknowledgements

The Hyperledger Fabric network uses a very helpful fabric-starter script, which integrates fabric-rest REST API server and admin web app.

The scripts are inspired by first-network and balance-transfer of Hyperledger Fabric samples.