Visualizing Blockchain Operations with Hyperledger Explorer
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:
- transactions and associated data
- network information
- 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.
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.
As described in the DTCC proposal, Explorer comprises six major components.
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.
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.
One can also take a look at transaction events activity flow.
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.
“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.
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.