Development update - Q3 2019

Development update - Q3 2019

The third quarter has been one of consolidation and improvements. We have shifted some focus to testing and quality control, but that doesn't mean there isn't any news. Here are some highlights.

Postchain 3.0 and Rell 0.9.0 released

These are major releases which introduce functionality needed for the mainnet. The main focus for these versions was on the use of the GTV data format to make all data structures inspectable in the blockchain code, which is important for cross-chain transactions and cross-blockchain interactions. Rell got advanced support for merkelized GTV proofs in form of 'virtual GTV', which makes it easy to write code using such proofs.

Rell 0.9.1 – decimal type support

Rell 0.9.1 adds support for a 'decimal' type which is important for complex computations. This type is able to represent an extremely large range of numbers with fixed, easily-understandable precision and fully deterministic calculations. Such a type can be useful, for example, in financial calculations, and also in games. Most blockchain platforms lack support for a type like this, making code doing computations relatively cumbersome and error-prone.

Postchain managed mode

So-called "managed mode" essentially makes it possible to manage a node using a blockchain. This means that a node can retrieve information about blockchain configurations and peers from the blockchain itself. This allows Chromia control logic to be implemented in Rell. It even allows the control logic to update itself.

Blockchain components: tokens and SSO, Vault

Of course, having a blockchain without tokens is b000ring.

FT3 defines a token standard and a library which implements it. It comes with a JS library which offers convenient way to work with tokens on the client side.

Beyond tokens, it provides a standardized authentication management mechanism with native multi-sig and single-sign-on support.

This standard is implemented in Chromia Vault user-facing component which handles key management and token transactions (including cross-chain transactions) for users.

C# Unity client library

External developers have contributed a library which allows C# (and, importantly, Unity) client applications to communicate with Chromia.

Eclipse-based Rell IDE

A much more advanced Rell IDE, implemented as an Eclipse plugin, has been released. It verifies the entire application code in real time and allows running complex multi-blockchain configurations, among other things.

Rell Cloud IDE

Another simplified web-based IDE has been deploying to the cloud, allowing users to try Chromia development simply by opening a web site – no installation necessary!

Performance testing

Of course, it is important that blockchain software not only "has features", but can also work in a reliable and performant manner. For this reason we focused more on advanced integration and performance tests this quarter. In particular, we created tools which automatically configure and deploy nodes in the cloud, measure performance, etc.

Real-world testing

We believe it is important to take feedback from real applications – it doesn't matter if your blockchain can "do" millions of artificial transactions per second if it cannot support actual use cases.

For this reasons, we not only developed core components, but also collaborated with developers building applications on the Chromia technical stack, and encouraged them to test these applications on real users. The most significant of these has been a social media app akin to Reddit, but with features relevant to a decentralised application. It has been tested within our closed alpha testing group, and has proved stable and performant. We will release further information about this to the general public in due course. In the meantime, if you wish to be part of our alpha group you can apply at chromia.com.