A node.js implementation of Hyperledger Fabric chaincode shim, to allow endorsing peers and user-provided chaincodes to communicate with each other

Usage no npm install needed!

<script type="module">
  import fabricShimM954 from 'https://cdn.skypack.dev/fabric-shim-m954';


Hyperledger Fabric - Node.js Contracts

Build Status fabric-contract-api npm module fabric-shim npm module fabric-shim-api npm module fabric-shim-crypto npm module Rocket.Chat

This is the project to support the writing of Contracts with the node.js runtime.


As an application developer, to learn about how to implement "Smart Contracts" for Hyperledger Fabric using Node.js, please visit the API documentation and follow the tutorial links.


For details on what Nodejs runtime and versions of Hyperledger Fabric can be used please see the compatibility document.

npm Shrinkwrap

In line with the advice from npm on shrinkwrap the modules published do not contain a npm-shrinkwrap.json file.

It is STRONGLY recommended therefore that after testing, and before putting your contract into production a npm-shrinkwrap.json file is created. When the chaincode is install it will be via a npm install --production command.


If you are interested in contributing updates to this project, please start with the contributing guide.

There is also a release guide describing the process for publishing new versions.


Hyperledger Project source code files are made available under the Apache License, Version 2.0 (Apache-2.0), located in the LICENSE file. Hyperledger Project documentation files are made available under the Creative Commons Attribution 4.0 International License (CC-BY-4.0), available at http://creativecommons.org/licenses/by/4.0/.