What is the difference between Hyperledger Fabric & Hyperledger Composer?


(Varun Raj) #1

So this is becoming a very common question among the community now. What is the difference between Hyperledger Composer and Hyperledger Fabric and I would like to get this clarified in this article.

What is Hyperledger Fabric?

In general Hyperledger Fabric is a framework for developing Enterprise Permissioned Blockchain Applications. Here when we say framework, we talk about a collection of components that work together to create fully functioning system, in this case it’s blockchain application. These components includes the following.

  • Fabric Peer - Used for validation, endorsing and commiting of data.
  • Fabric Orderer - Used for distributing the transaction in a sequential manner so that every data is handled right.
  • Fabric CA - Used for issuing new certificates and crypto materials for additional users/peers after the initial network is been set.
  • Fabric CouchDB - Used for holding the world state of the network.
  • Fabric Chaincode - User for performing Business Logic.

The above components are collectively called as Hyperledger Fabric.

What is Hyperledger Composer
Hyperledger Composer is nothing but a framework for building smart contracts or also called as chaincodes for Hyperledger Fabric. So with Hyperledger Composer you can just build business rules (Generally called as smart contract in blockchain world and chaincode in HLF world) and then deploy it to a above mentioned Hyperledger Fabric Network. The chaincode you create with composer becomes meaningful only if we deploy it to a fabric network

On a side note, If you’re planning to use Hyperledger Composer for developing you smart contract, I strongly suggest not to proceed with it as IBM officially announced that they are stopping support for it. So you must use native Fabric SDK to develop your chaincode. To get Started with it checkout: Writing your first simple Hyperledger Fabric Chaincode in Go