Cardano and Joget: Building No-Code, Composable Blockchain Apps

Cardano and Joget: Building No-Code, Composable Blockchain Apps

1. Introduction
Joget is an open source low-code/no-code application platform for faster, simpler digital transformation. Previously, we have seen how we can integrate Hyperledger Fabric with Joget. So in this article, we will look at a no-code approach to integrate another popular blockchain technology, specifically the Cardano blockchain, into a full-fledged web application.


2. What is Cardano?
Cardano is a third-generation, open source, decentralized proof-of-stake (PoS) public blockchain platform, that aims to be a decentralized application (DApp) development platform with a multi-asset ledger and smart contracts. It is also home for the cryptocurrency ADA.

The blockchain operates on the Ouroboros proof-of-stake consensus protocol. Compared to first-generation proof-of-work mechanisms like Bitcoin, instead of relying on powerful machines solving complex cryptographic equations to achieve consensus and compete for block rewards, the proof-of stake mechanism relies on end users staking or delegating their own coins in a staking pool in order to be elected the rights for validation and earn transaction rewards. This modern mechanism allows Cardano to scale the network more efficiently and eliminate the need for large consumptions of energy to achieve consensus, along with the benefits of rewarding stakers in a more fair and linear manner, and many more.

The platform began development in 2015 and was launched in 2017 by Charles Hoskinson, a co-founder of Ethereum. He co-founded IOHK, a blockchain-engineering company, whose primary business is the development of Cardano, alongside the Cardano Foundation and Emurgo.


3. What can Joget do with Cardano?
Most blockchain technologies available today have their own native coin that is able to transfer real-world value. For Cardano specifically, its native coin is ADA. Despite this fact, it is the aspects of a blockchain's security, speed, scalability, and its features that will be factored in for feasibility for enterprise applications.

Now in relation to Joget's extensive plugin architecture, not only will we be able to design Joget apps that are able to transfer real-world value, but we can also take advantage of certain unique features of Cardano. Specifically for this proof-of-concept, it is the ability to simply embed form data into the transaction's metadata and storing it into the blockchain to serve as an immutable and always-accessible proof-of-existence. This feature alone can serve a wide variety of enterprise applications. The 4 major applications are and not limited to:
  • Validation and verification
    • Metadata can be used to validate and verify external physical products. This requires pairing with a physical identifier, such as a QR-code for supply chain tracking of fast-moving consumer goods at low cost.
  • Authentication and attribution
    • Metadata can be paired with a physical identifier to prove authenticity of an educational institution. This is especially useful for digital courses and accreditations.
  • Secure record of information
    • Since metadata attached to a transaction and confirmed on the Cardano blockchain is immutable, no one can tamper with its values nor its existence. You can use this as a method of secure record to store an invoice ID to prove the purchase of goods and services for example.
  • Timestamping
    • Metadata can be used to create a timestamp within a transaction, allowing anyone to verify the time and date at which something was bought, sold, or transferred.

4. Preparing your environment
To use the Cardano Blockchain plugin pack, there is NO need to setup any additional infrastructure (e.g.: Cardano node) of any sorts to start leveraging Cardano's features in your Joget apps.

The only prerequisites needed to run the plugin pack is to register an account at https://blockfrost.io/ and generate your own project "API Key'' to key into the plugins configuration.

After then, simply download the Cardano Blockchain Pack JAR file, and upload the downloaded JAR file into Joget via Manage Plugins under System Settings.


5. Designing your first Cardano-integrated Joget app

Completed Sample Cardano App
Cardano Blockchain Sample App

To get started on designing your first Cardano-integrated Joget app, do try out the full detailed tutorial in the Joget Knowledge Base. Or, you can also watch the tutorial video below:


In the tutorial, we will build a simple sample app to learn how to integrate with Cardano via the 3 plugins bundled in the Cardano Blockchain Pack:
  • Cardano Generate Account Tool
  • Cardano Send Transaction Tool
  • Cardano Account Form Load Binder
The app integration can be performed by a Joget app designer simply by utilizing the Cardano Account Form Load Binder plugin in a Form to load account data, and mapping the respective Generate Account and Send Transaction plugins in a process to generate Cardano accounts and perform transactions on the Cardano blockchain.

Here below are a few screenshots from the tutorial showing the configuration of these plugins and its result.

Cardano Generate Account Tool

Cardano Generate Account Tool: Selecting Network Type
Cardano Generate Account Tool: Selecting Network Type

Cardano Generate Account Tool: Store Account Data To Form
Cardano Generate Account Tool: Store Account Data To Form

Generated Cardano Account seen in a form
Generated Cardano account data viewed in a form

Cardano Account Load Binder

Configuring Cardano Account Load Binder
Configuring Cardano Account Load Binder

Cardano Account Load Binder: Map Value To Form Fields
Cardano Account Load Binder: Map Value To Form Fields

Cardano account data loaded directly from blockchain to form
Cardano account data loaded directly from blockchain to form

Cardano Send Transaction Tool

Configuring Cardano Send Transaction Tool
Configuring Cardano Send Transaction Tool

Cardano Send Transaction Tool: Transaction Details w/ Metadata
Cardano Send Transaction Tool: Transaction Details w/ Metadata

Cardano Send Transaction Tool: Store Response To Workflow Variable
Cardano Send Transaction Tool: Store Response To Workflow Variable

Sending ADA to another account via an approval process
Sending ADA to another account via an approval process

Confirmed transaction with metadata as seen in the Cardano blockchain explorer
Confirmed transaction with metadata as seen in the Cardano blockchain explorer

And finally, as a proof-of-existence of this transaction performed during the creation of this tutorial, you can browse to this URL to see the transaction details in the official Cardano blockchain explorer: 


6. Customizing the Cardano Blockchain Plugin Pack
This plugin pack's source code is available in a new open source repository at https://github.com/jogetoss/cardano-blockchain-pack

Open Source Plugin Pack at JogetOSS
Plugin pack source available at JogetOSS

JogetOSS is a community-led team for open source software related to the Joget no-code/low-code application platform. Projects under JogetOSS are community-driven and community-supported, and you are welcome to contribute to the projects. Feel free to clone the project and customize accordingly to suit your needs.


7. The Future
In this article, we have explored how we can use Joget's extensive plugin architecture to leverage blockchain technology to build composable blockchain apps.

By combining blockchain technology with a no-code/low-code application development platform such as Joget, developers can abstract away the technicalities of blockchain functions/components to enable business users and citizen developers to independently build enterprise blockchain applications in a no-code manner. 

The ultimate goal is to achieve full integration ; a functionally complete blockchain plugin pack so to speak. By doing this, it is certainly possible in the foreseeable future where Joget app designers only need to understand the concepts of a particular blockchain technology to start building full-fledged enterprise web apps with their preferred blockchain pack as composable/modular blockchain components, all without the need to write any code of any sort.

This effectively and drastically lowers the skill floor and time-to-market to enable large-scale adoption of blockchain technology. Just to name a few enterprise blockchain solutions:
  • Fast-Paced Supply Chain & Logistics Tracking
  • Authenticity Token/Non-Fungible Token Generation & Management
  • Real-World Asset Tokenization & Management
  • Certificate Issuance & Verification
  • Fully-customizable and UI-friendly Stake Pool Management
  • And many more...
As what we have learned in this article, integration is possible not only with Cardano but also for any other blockchain technologies out there, given the right tools and libraries. Just to demonstrate, here's another proof-of-concept plugin pack that allows app designers to interact with the XRP Ledger. See:

9. Credits

Get Started
Resources to get started developing low-code apps with Joget:
Follow us for the latest news and updates:
 

Comments

Popular Posts

Blockchain Made Simple: No-Code Apps with Hyperledger Fabric and Joget

Blockchain 101: Understanding the Building Blocks of Blockchain Technology

No-Code, Low-Code and Pro-Code: Why Flexibility is Essential for Digital Transformation

Building a No-Code Blockchain App with IBM Blockchain Platform and Joget on OpenShift

How to Solve Your Enterprise App Performance Problems