Discovering the Lisk SDK monorepo
The Lisk team has just presented the new Lisk SDK monorepo, born from the union of the Lisk Framework, Elements and Commander, in preparation for the launch of the Lisk’s Alpha SDK.
A monorepo structure consists in a software development strategy in which a code referring to multiple projects can be stored in the same repository, in this case in the public GitHub. Taking Lisk into consideration, this step will involve some changes to the product range as well as to GitHub itself.
Below there is a comparison between the current set up and the new monorepo.
One of the major advantages of this new repository structure is that it speeds up the development work, as all products developed using the SDK are now processed within the same repository. Another strength of this particular structure is that, by keeping the code in a repository, similar encoding standards are imposed. This makes the code more accessible to external developers by being easier to read and easier to contribute to.
The team considers all the packages that make up the Lisk repository as a fundamental part of the Alpha SDK. This represents a first step towards a single unified product called Lisk SDK, which is consistent with the strategy of having all the basic tools needed to work with blockchain applications as an SDK, in order to make them easily usable by developers.
The strategy involves the union of Lisk Elements and Lisk Commander to the old Lisk Core repository and renaming it to Lisk SDK. Subsequently the application part of the blockchain will be moved to a new repository called Lisk Core. Lisk SDK mainly contains an application framework, a collection of libraries that provide blockchain application functionality by means of Lisk Elements and a command line tool from Lisk Commander. The task of Lisk Framework is to bring together all the libraries and to create a business logic as the basis from which to create a blockchain application.
Given that, as mentioned above, repository restructuring is not an isolated event but is part of a process, the Lisk team finally reports a series of intermediate steps that will allow the Alpha version of the SDK to be completed. They are:
- Finishing the development and QA phases of Lisk Core 2.0.0, publishing the “lisk-framework” package in version 0.1.0 to npm repository;
- Moving the temporary folder “lisk” from “LiskHQ/lisk-sdk” to the new repository “LiskHQ/lisk-core”;
- Releasing of the upcoming Lisk Core 2.0.0 to Testnet and Mainnet.