Build a blockchain application
What is a blockchain application?
Blockchain applications communicate within a network to agree upon which data is valid and therefore should be stored, or whether it should be rejected and bad actors potentially punished.
The set of blockchain rules is already implemented by Lisk modules and libraries. By reusing them and implementing the well-designed Lisk SDK Framework, it's easy to compose new case-specific applications.
For more information on blockchain use cases, visit Blockchain Business in the Lisk Academy.
What is the Lisk SDK?
The Lisk SDK provides a development framework that enables developers to create their own custom blockchain applications with ease.
The Lisk SDK consists of the following tools:
- Lisk Framework: Consists of a selection of various Modules and Components which each provide specific functionality or logic for use in blockchain networks.
- Lisk Elements: Collection of NPM packages that provide blockchain- and lisk-specific functionalities.
- Lisk Commander: Command line tool to interact with the network and maintain a node.
Build a blockchain application in 3 steps:
1. Set up the SDK
To get started building a blockchain application, set up the Lisk SDK.
To get your blockchain application started for the first time, follow the steps described in the Lisk SDK - Usage section.
2. Configure and customize the application
A. Configure modules and components
It is also possible to exchange Modules with different ones, or to add new Modules to provide additional functionality.
B. Register custom transaction types
Transactions are the main way to add data to your blockchain.
The most basic transaction type, which is part of most blockchains, is for example a transfer-transaction type to send tokens from one account to another.
You can choose the appropriate transaction types for your application and its use case.
For comparison, please view the list of all transaction types which are implemented in the Lisk Protocol.
To create custom transaction types, utilize the provided
BaseTransaction interface as described in the section for custom transactions.
See the Tutorials to see examples of how to create custom transaction types and how to add them to your application:
- Hello World App: A example of a Lisk blockchain application with 1 custom transaction type, which extends the BaseTransaction type.
- Cashback App: A more practical example creating the new transaction type
Cashback. Cashback extends the pre-existing transaction type
TransferTransaction, making for a straightforward implementation.
3. Interact with the network
To monitor and explore the network, you may want to set up a monitoring solution like e.g. Lisk Explorer.
Depending on the level of customization, Lisk Explorer and Lisk Commander may also require customization to prevent other services from failing.
Another simple way to interact with the network is by connecting it to Lisk Hub.
Lisk Hub provides a simple and beautiful user interface to create and manage accounts on the network, and also to interact with the network by sending different types of transactions.
Once your blockchain is finished, and it is possible to send the transactions (and custom transactions), you can create a frontend to allow users to interact and use your blockchain application.
To connect your frontend to your network, we recommend to make use of Lisk Elements' packages like lisk-api-client.
Check out the example applications at the tutorials, to see concrete examples how to make first interactions with a blockchain application.
See more options in the Interact with the network getting started section.