All the developers out there already should know about DAML – the game-changing programming language that we have all been waiting for. But now Digital Asset brings a huge surprise for all the fans out there – project : DABL.
Right after becoming live, project DABL is creating a lot of buzz in the blockchain community. I mean, why wouldn’t it? It’s a next-level technology that is making our lives much easier, especially for the developers.
But, many of you may not have a full understanding of how it works or what kind of benefits it offers. So, to help your troubling mind, I’ve put together this guide focusing on project DABL.
Just sit tight, grab a cup of coffee, and let’s begin!
What Is project : DABL?
First of all, let’s start with what this project is all about. DABL is actually a cloud platform that will help you streamline your SaaS application or solution from the very start to the finishing line. Do you know what the best part is?
Well, the best part is that this platform is designed to help you get it all done with as little development as possible.
Just think how easy it can be to develop your projects without wasting a lot of time and resources. In reality, project DABL architecture is a great option for any developer who wants to develop scalable, simple backend applications.
Also, it comes with a serverless experience now! Also, any kind of application that doesn’t need heavy backend support like web apps can benefit greatly from the DABL architecture.
More so, developers are already looking into this platform and building project DABL applications for it.
The powerful combination of DABL and DAML is truly astonishing.
What Are the Benefits of Project DABL?
Using DABL can be a great option for your development process. In reality, you will not only get to launch your application much faster, but you can also do it with very few engineers and clean design.
Anyhow, let’s check out the benefits of using this platform.
- Supports Any DAML Application: DABL will actually allow uploading any of your applications without altering the code or modifying the structure. So, you can scale your DAML applications automatically in no time.
- Free Application APIs: Any of your application code written in DAML will automatically create and define all of the APIs for your application in the platform. Therefore, it means all you have to do is connect your IoT or UI devices to your backend, and that’s it!
- Free Authentication and Access Control: Any application user can directly authenticate using the APIs. More so, the DAML application code defines every action and authorized data. So, you won’t need any complicated policy or underlying logic to keep the solution safe and maintain rules.
- Third-Party API Support: You can also use third-party APIs or any services directly in your application using the DABL architecture. Thus, you won’t need any additional components or architecture for that.
- DAML Ledger Compatible: Maybe you just want to manage your own applications environment. So, for that, any application you wrote for the DABL is supported on any other kind of DAML based ledger platform. So, that will extend your marketplace spectrum as well.
Check out more of our guides:
- Hashing In Cryptography
- Companies Investing in Blockchain
- Blockchain Oracles: Know About The Fundamentals
DABL Tutorial
Now, it’s time for getting a peek into the console of the platforms. So, here you will get a brief DABL tutorial. But I will suggest you check out their platform tutorials for proper guidance. Anyhow, let’s start!
DABL Console
Home
This is the first tab you will see the DABL console. If you have any existing applications on it, you’ll see it here. But if you don’t have any, you’ll see a create your own option.
Apps
In here, you can join an application that you have invited to. More so, you’ll see an option “Join by Ledger ID” to keep the app in your list. Furthermore, the best part is that you can use a customized name for the app for your convenience.
Once you join an app, you can create new contracts on the ledger, exercise your choices, and even see your active contracts.
Recent Activity
If you’ve joined any ledger, you can see the recent activity tab. Using this, you can see contract templates, all parties, and so on.
Workspace
Once you sign in to DABL, you will get your very own workspace. In reality, this feature allows you to manage all your ledgers and organize the files of your projects. More so, you can upload your DAML files here as well.
Quick Build Tab
You’ll see a “Wondering what to do next?” option in the interface. Once you click it, you can see the file count, and parts of your DABL app. Anyhow, here you can upload DAML Triggers, UI assets, and so on.
Deployments Tab
To see the deployments tab, you have to click on a ledger from your workspace and see the console. In reality, this tab will allow you to configure files, manage app artifacts, publish your application’s frontend.
DAML Models
These models mainly define the functional and data structure of your application.
Automated Services
Most of the applications will have automation services by default. In reality, they do it using DAML Triggers or automated services in Python.
DAML Triggers
DAML Triggers actually allows you to write automated processes in your app using DAML. If you want to deploy a DAML Trigger, then you need to compile all the DAML templates and DAML Triggers separately into the own.dar files. From there, you can drag and drop your DAML and DAML Trigger .dars into your ledger.
Integrations
Integrations will help your application communicate with the outside world. Once you deploy an integration onto your ledger, it will maintain connections between your DABL ledger and the external system like an on-ledger oracle.
App UI
In DABL, you can deploy and host your frontend components for your application. For that, you have to publish files to the ledger-specific subdomain. The files have to be in .zip format. For more information, check out the DABL tutorial.
Live Data Tab
You can use this tab to explore all your DAML contracts in your application ledger like a ledger explorer.
project : DABL Tutorial: How to Deploy A Sample App?
This is a very basic DABL tutorial for deploying a sample application. Once you sign in into the platform, you’ll notice there are some sample applications at the very bottom of the workspace. From there, you can deploy them onto a ledger and then start your implementation process.
- First of all, you have to create a project in your Workspace. You can do it by clicking on “New Project” and giving it a name and a ledger.
- Next, you can find an application to deploy at the bottom section of the workspace. After that, click “Add to Project.”
- After that, choose your ledger and project, and you’ll see DABL deploying all the files automatically.
- Files will take some time to deploy. So, once it’s finished, you can click on the ledger and configure the deployed files.
- For this, you’ll have to go to the deployment tab. There you will see Action Needed tab and unconfigured automation files below it. For automation, make sure to deploy as the UserAdmin party when configuring.After that, just click “Launch.”
- Next, you have to publish your UI asset in the deployment tab. If they aren’t published, you need to publish them by clicking “Publish.”
There, it’s done! Now you are live!
Furthermore, to interact with the application, you can use the DABL console or you can follow the URL subdomain on the Deployments tab to interact with your live UI
What Are the Use Cases of DABL?
DABL and DAML make a killer combination for creating a framework for developing flexible, composable applications without the slow pace. In reality, all you have to do is to write the code that will describe the characteristic of your application without worrying about managing the architecture.
Once you deploy in project DABL architecture, you will only have to pay for what you are using and nothing more.
The variable pricing rate hasn’t been published yet, but use will be metered by how often your application updates the ledger..
Here are good DABL use cases. Let’s check them out!
Autoscaling Applications
In DABL, you can deploy a DAML application without any kind of infrastructure configuration or development. Thus, you can develop a fully functional application from scratch and launch it within days!
Furthermore, applications running in DABL will scale automatically when your traffic starts to increase. More so, only then you have to pay for the increased traffic, not a minute before.
Multiple-Page Application (MPA) Backends
Another one of the project DABL use cases is that you can use it to drive rich multiple page applications. More so, only a single file can generate all the APIs, access controls, roles, permissions, and so on.
Anyhow, DAML mainly breaks down all of the steps of a workflow into a series of state changes and functions. More so, the DAML file will describe highly granular controls that you have over data permissions in the workflow.
In this regard, you can use DABL to simplify the authorization and authentication schemes using a mapping technique to map an authentication layer.
Event-Driven Applications
Did you know that DAML applications can produce reproducible and tangible event-driven applications using the sequence of events? More so, it can do that across several disparate systems and makes it available for definitive conclusions.
This is one of the benefits of a DAML application running in DABL. Along with this, you will see that DAML applications will support external components and systems. Thus, you can scale much faster with DABL.
Extending State Machine
Almost every single business, mainly those in the beginning stage of digital transformation, can look for refining, consolidating, and encoding their core business.
Therefore, to help you out with that, you can use DAML’s self-descriptive language that can capture these workflows.
More so, this language can describe the separation of actions based on the role and combines them in a broader state machine. So, you can see that DAML is ideal for extending your state machine, and you can achieve that with ease using DABL.
Auditable and Transparent Applications
Using a SaaS application can actually harm your brand value because these have issues with the application data misusage. But in DABL, any of your application is free from this scrutiny as the users can see the core data relevant to them.
More so, users can also audit which entity or user has permission to access certain data at any time. So, it offers a transparent infrastructure for them, increasing your brand value.
Also, developing applications in this manner will help you and your company to gain the trust of your consumers, which will increase the traffic as well.
Read More:
How Does DABL Compare to Other Platforms?
DABL comes with elements of SaaS, FaaS, iPaaS, and PaaS. Here, I will compare a few of them with DABL to give you a better idea of how this technology is compared to DABL.
DABL vs. IaaS
Often in Infrastructure as a Service (such as Azure, GCP, AWS), providers offer the users to manage their virtual application components that you can find in any data center.
They don’t offer any suggestions to the developers. More so, the developer is solely responsible for writing the code for both the application and the infrastructure. In reality, this can lead your team to a very complicated DevOps path.
But DABL applications can run from only a single DAML backed file. It means that you only have to describe the behavior of your framework, and the platform will take care of the rest.
Thus, your team won’t have to go through any complicated DevOps procedures at all.
DABL vs. PaaS
You can think of Platform as a Service as an upgraded IaaS. Although PaaS platforms are more oriented and aid in the development of the application, there’s still a lot of hassles that the developer has to maintain.
In reality, you will write less code or work on the infrastructure a bit less, but you will still have to scale many components on your own and in concert with the PaaS architecture. This means working across components, servers – makes launching the application slow and complex.
But DABL applications won’t have to deal with these issues. Most of the time, the developers won’t even know about the underlying infrastructure. And they don’t have to worry about it. In reality, DABL will take care of the rest.
DABL vs. iPaaS
Integration Platform as a Service is a popular cloud server niche that’s built for connecting on-prem applications to the cloud.
The main purpose is to connect third party and legacy APIs to each other and make accessible outside the legacy infrastructure. As apps incorporate more and more APIs into their core processes, many developers will build data normalization and transactional layers to support the growing ecosystem of APIs.
But in DABL, you can call external APIs into the application without even developing another aggregation layer into the system. External APIs are normalized into DAML and application developers have a simple way to interact with many APIs of any type. So, it means it’s easier to integrate external APIs without worrying about management issues.
DABL vs. FaaS
DABL architecture seems to follow the serverless experience that you will find in Function as a Service platform. Today, FaaS is well-suited for edge computing processes and services with simple and straightforward functions.
Also, they are mainly stateless and event-driven systems. DABL seems to take inspiration from these platforms. It’s mostly focused on empowering developers rather than overwhelming them in their application development.
So, in DABL, you will get a serverless experience with simple and clean design. More so, you can benefit highly from connecting to any serverless services as well. There are no restrictions on that.
Want to learn about Blockchain? Check out our blockchain courses right now!
Ending Note: Developers Best Buddy
It seems DABL has it all. In reality, this platform is highly suited for launching any DAML based application without worrying about the infrastructure! All you have to do is to describe the business logic or behaviors of your application, and the platform will take care of the rest.
Can it get any easier? I’m pretty sure that developers will surely love this platform. Why shouldn’t they? It takes less time to build and launch any application on it.
Anyhow, now that you know about this project, the final decision is up to you. But I would say you should definitely give this one a shot!