0 Comments

Visualizing Blockchain Operations with Hyperledger Explorer

by Roger StrukhoffMay 30, 2017
Giving insights on how Hyperledger Fabric and Sawtooth operate, Explorer visualizes transactional, chaincode, network, and other ledger-relevant data.

Why Explorer was incubated

The Hyperledger Project has steadily grown since its founding in December 2015 and now reaches more than 130 organizations. Its development community has incubated eight projects to date: Fabric, Sawtooth, Iroha, Burrow, Indy, Composer, Cello, and Explorer.

Today, we’ll focus on the latter one and its critical ability to allow users to see what’s happening on their Hyperledger blockchains.

According to its description by the Hyperledger project, Explorer is designed to create a user-friendly web application that can view, invoke, deploy, or query:

  • blocks
  • transactions and associated data
  • network information
  • chaincodes
  • transaction families
  • any other relevant information stored in the ledger

IBM, Intel, and DTCC (a clearing and settlement company in the financial services industry) were its initial contributors, as they had all developed explorer projects on their own. Rather than compete and waste time, they combined their efforts to create the Hyperledger Explorer incubation.

hyperledger-explorer-visualisation-board-transactionsSource

The three companies all arrived at the idea of creating an explorer more or less at the same time from a common need to see what was going on in the Hyperledger Fabric and Sawtooth frameworks. Developers needed to be able to find and view ledger information, and interact easily with it. The concept is no different from the explorers found on Windows or Mac desktop systems. Flying blind is never the way to go.

 

Architectural overview

As described in the DTCC proposal, Explorer comprises six major components.

hyperledger-explorer-componentsSource

Key components are as follows:

A web server. Node.js is proposed as a back-end framework for implementing server-side components. Express Node.js serves a web application.

A web UI. With AngularJS, the front-end framework will be implemented. According to the proposal, Angular’s “features like data-binding and directives greatly help in developing reusable components and modular code.” Bootstrap is also used “for its rich UI and responsive features.”

Web sockets. This key API pushes information from the server to clients, and thus “reduces load on clients and server.”

A database. Information about blocks, transactions, smart contracts, etc. is stored in this RethinkDB.

A security repository. “User identity and access management will be implemented using a federated security repository,” according to the proposal. “This will (serve as) a facade for security implementations from different blockchain platforms.”

Blockchain implementation. Each blockchain must have a separate component “to provide updates on transactions, blocks, node logs, and smart contracts to the Explorer web server,” as the proposal goes. This can be done via web sockets.

Other technologies of Explorer’s stack include JavaScript, jQuery, D3.js, and HTML/CSS.

Hyperledger-Explorer-Demo-2Source

 

API workflows

The DTCC proposal also features numerous diagrams of how transactions, nodes, smart contracts, and other aspects of Explorer will work. Here is the process of getting transactions activity.

hyperledger-exolorer-getting-transactions-activitySource

One can also take a look at transaction events activity flow.

hyperledger-explorer-transaction-events-activitySource

In the DTCC proposal, there are also numerous diagrams on API workflows: chain info activity, blocks data model, node logs activity, etc.

 

Unified enterprise-level visualization

Explorer thus adds an essential element to operations in the world of private enterprise blockchains and is meant to be a valuable tool when blockchain’s immutable ledger needs to be accessed and examined.

Brian Behlendorf

Brian Behlendorf

Brian Behlendorf (Executive Director at Hyperledger) and Dan Middleton (Venture Technical Lead at Intel) voiced their enthusiasm for Explorer when it was first announced.

“We are turning towards this idea that Hyperledger can be a home for a number of different projects with different focuses, with different priorities, with different agendas, all collectively connected by this concept of blockchains, distributed ledgers, and smart contracts.” —Brian Behlendorf, the Hyperledger Project

In the high-level Explorer proposal, the three companies “seek to consolidate the best of the various contributions into a single, shared UX/UI to visualize the state of the blockchain.” They’re working on a minimum viable product (MVP) to have pluggable API support for Fabric and Sawtooth. Initial release is yet to happen, but aims to be compatible with the emerging Fabric v1.0.

hyperledger-exolorer-main-dashboardSource

Anyone interested in digging into this project and becoming involved with it can check out its JIRA tracker, GitHub repo, or documentation.

Now, it’s up to the community to see how the project will play out, and if it accelerates blockchain adoption within enterprises through unified visualization.

 


Other Hyperledger incubations:

Hyperledger Fabric | Sawtooth | Iroha | Indy | Burrow | Composer | Cello


 

Related video