Skip to content
Immersive 3D Blockchain Explorer
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config add build Jul 2, 2019
docs README.md update Jul 18, 2019
public cubemap rename Jul 3, 2019
scripts init May 24, 2018
server cubemap rename Jul 3, 2019
src README.md update Jul 18, 2019
.gitignore server-side voronoi relaxation fix Mar 19, 2019
LICENSE.md add license and update packages Jul 2, 2019
README.md add images to README.md Jul 18, 2019
package.json path fix Jul 3, 2019

README.md

Symphony 2.0

Symphony

Symphony 2.0 is a real-time, 3D, immersive blockchain explorer.

Symphony 2.0 aims to answer the question what does a blockchain look and sound like?

It is an educational initiative with the aim of inspiring a wide audience about blockchain technology.

Visual Structures

In Symphony 2.0 all of the 3D structures represent real components of a blockchain.

Transactions

Transactions are represented as hexagonal crystals. The height of each crystal is based on the transaction value. The brightness of the crystal surface is based on the ratio of unspent to spent transaction outputs, see Bitcoin UTXO. Fully spent transactions appear darker in color than unspent transactions.

Blocks

The arrangement of crystals on the block surface and the crystal radii is controlled by a 2D Simplex Noise function. The noise amplitude is controlled by the ratio of total block transaction fees to total block value. We use this metric as a type of "Network Health". If the transaction fees are very high compared to the transaction amounts, we consider this an unhealthy state. An unhealthy state is visually reflected by transactions being more random in radius and spacing.

Merkle Trees

Symphony

Merkle Trees are a fundamental component of blockchains and decentralized applications. They allow efficient verification of large data sets. In bitcoin and other cryptocurrencies, Merkle Trees connect one block to the next. They are constructed from hashes of the block transactions. In Symphony 2.0 we show how the branches of the trees connect to the transactions on the top of the block.

Mempool

In Symphony 2.0 the Mempool is visualised as a swirling cloud of particles at the center of the blockchain spiral. The total count of particles is controlled by the actual mempool size.

Spent Transactions

We show transaction outputs being spent via a trail of energy leaving the transaction crystal and flying toward the mempool.

Blockchain

The macro blockchain structure is shown as an archimedean spiral. This structure is an efficient use of space for showing the entire blockchain on screen.

Sound Synthesis

Symphony 2.0 generates a unique soundscape for each block based on the block data using Additive Synthesis. It loops through each of the transactions in a block and converts the transaction values to pitch (larger transaction value = lower pitch). Each transaction has a fundamental pitch as well as 7 harmonics. It utilises GPU.js to generate the sound buffers quickly. We use the ratio of the transaction fee to value as an indicator of "Transaction Health". If a transaction has a very high fee to value ratio, we add randomness to the harmonics, creating a more sonically inharmonic sound.

The sound in Symphony 2.0 serves a functional purpose - you can listen to the sound of a block and ascertain properties about the number of transactions, the level of fees in the block and the value being moved around.

Installation

yarn install && yarn start

License

Symphony 2.0 is licensed under the Apache-2.0 licence.

You can’t perform that action at this time.