Hyperledger Fabric SDK for Node.js fabric-client API
* **fabric-client**:
* create a new channel -> createChannel
* send channel information to a peer to join -> joinChannel
* install chaincode on a peer -> installChaincode
* instantiate chaincode in a channel, two steps: [propose] and [transact] ->sendInstantiateProposal/sendTransaction
* submitting a transaction, two steps: [propose] and [transact] -> sendTransactionProposal/sendTransaction
* query a chaincode for the latest application state -> queryByChaincode
* query channel height -> queryInfo
* query block-by-number -> queryBlock
* query block-by-hash -> queryBlockByHash
* query all channels that a peer is part of -> queryChannels
* query all installed chaincodes in a peer -> queryInstalledChaincodes
* query all instantiated chaincodes in a channel -> queryInstantiatedChaincodes
* query transaction-by-id -> queryTransaction
* query channel configuration data -> getChannelConfig
* connect to a peer's event stream -> connect
* listen on [block events] -> registerBlockEvent
* listen on [transactions events] -> registerTxEvent
* listen on [custom events] -> registerChaincodeEvent
* serializable [User]{@link User} object with signing capabilities
* hierarchical configuration -> getConfigSetting
* logging utility -> setLogger
* pluggable [CryptoSuite] -> api.CryptoSuite
* Software-based ECDSA -> CryptoSuite_ECDSA_AES
* PKCS#11-compliant ECDSA] -> CryptoSuite_PKCS11
* pluggable [State Store] -> api.KeyValueStore
* File-based store -> FileKeyValueStore}
* CouchDB-base store -> CouchDBKeyValueStore
* customizable [Crypto Key Store] -> CryptoKeyStore