Cardano and Joget: Building No-Code, Composable Blockchain Apps
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.
- 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.
5. Designing your first Cardano-integrated Joget 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.
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: Store Account Data To Form
Generated Cardano account data viewed in a form
Cardano Account Load Binder
Configuring Cardano Account Load Binder
Cardano Account Load Binder: Map Value To Form Fields
Cardano account data loaded directly from blockchain to form
Cardano Send Transaction Tool
Configuring Cardano Send Transaction Tool
Cardano Send Transaction Tool: Transaction Details w/ Metadata
Cardano Send Transaction Tool: Store Response To Workflow Variable
Sending ADA to another account via an approval process
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.
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:
8. Resources & References