In my previous article “Blockchain Playground”, I created a simple demo to help teach the basic concepts of blockchain.

The demo was driven via the terminal and focused on the functional mechanics of blockchain. For example, the creation of nodes and peers, mining of new blocks and simple consensus.

I have personally used the demo many times and have received positive feedback regarding the value. However, the demo expects a certain level of blockchain knowledge, which not everyone will have. For example, it does not inherently provide any context regarding hash functions, blocks, etc.

As a result, I wanted to create an additional complimentary demo that would focus on the basics, specifically:

  • What is a hash?
  • What is a block?
  • What is a blockchain?
  • What does decentralised mean?

Considering the target audience, I felt it was important to make the demo very visual (web user interface) and as simple as possible (minimal number of clicks). As always, my starting point was to search GitHub for an open-source project that I could use as a foundation. This led me to “Blockchain Demo” by Anders Brownworth.

Blockchian Demo perfectly hit my criteria and even went beyond, starting to provide additional context regarding cryptocurrency, etc. As a result, I forked the code and started to streamline the application to meet my specific needs.

As you can see from the screenshot below, the application is very visual, with the navigation providing access to the four key areas: Hash, Block, Blockchain and Decentralised. The application itself is built using JavaScript and Jade, running in a Docker container (making it very portable and easy to setup).

Blockchain Playground UI

In recent weeks, I have delivered this demo multiple times, as part of a broader blockchain presentation. The demo itself usually takes around ten minutes to complete and seems to resonate well with the audience. The video below is a recording of the demo in action, including my commentary.

In conclusion, I believe this demo, alongside my previous demo, provides a very visual and tangible way to explain the core concepts of blockchain. My original plan was to only use this demo for blockchain beginners, however, I have found it provides a useful foundation for almost all audiences.

My forked version of the code is called “BlockchainPlaygroundUI” and is available publicly on GitHub.