Daml on Hyperledger Fabric 2.0
Nothing is loaded from YouTube until you press play, and then without tracking cookies.
About this video
๐ Get started with Daml: bit.ly/tryDaml ๐ Learn more about Daml Smart Contracts: bit.ly/learn_daml ๐ฎCheck out our blogs: bit.ly/daml-blog-engineering ๐ Become a Daml certified expert: bit.ly/daml-certification
New open source release: #DAMLonFabric 2.0 - with #DAML SDK 1.0 + support: daml.com/interactive-tutorials/deploying-daml/daml-on-fabric
We are delighted to announce a major new version of our open source DAML on Fabric integration, available here: GitHub - digital-asset/daml-on-fabric 30 (Ledger implementation enabling DAML applications to run on Hyperledger Fabric 2.x)
There are three headline improvements:
๐ Support for Fabric 2.x ๐ Support for DAML SDK 1.x ๐ Support for ledger authentication ๐ And numerous other performance, usability, and code enhancements. Youโll find the new version significantly easier to deploy and use and we hope you enjoy it.
When itโs time to take your app to production, youโll be able to get commercial support under enterprise SLAs from our friends at IntellectEU 10, with more partners coming soon.
๐ Please create a free account on project: DABL and deploy this smart contracts based chat application on your ledger. You get your own URL to share with everyone, and now have your own collaboration system for your projects!
๐ Here are two other end-to-end samples here and here that will help you get started when you are ready to host your own business app.
โฉ What better way than to create your roadmaps and important to-dos on DAML smart contracts based, project:DABL hosted, OpenWork Board! Board is a Kanban-style card tracking app.
๐ For any questions or assistance please feel free to write to us. Stay safeโ๏ธ
#HyperledgerFabric #dlt #smartcontract #blockchain #damlsmartcontract #digitalasset #ledger #technicalskills #DLT #skillset
Transcript
2,335 wordsCaptions as YouTube publishes them, usually machine-generated, so names such as Daml and Canton can be misheard.
- 0:00
welcome to our next little course on demo this one's gonna be a little different we're now looking at the cheat sheet today instead we're going to be looking at a online version of demo called scatter Kota it's a it's not really demo itself it's an online environment where you can execute and run a bunch of code so in Category we have a lot of different scenarios where you can try out different parts and
- 0:23
aspects of demo without having to install it yourself and also it's essentially you get a you know a getting started guide or a how-to and everything's nice and clickable and very much just shows you the process of doing a certain test with sam'l so today I'm actually going to be showing how to build deploy and run a demo application on fabric so what we're going to be doing are five different things and
- 0:48
it'll take about 15 to 20 minutes number one we're going to be setting up our demo lab in this case it's gonna be a project called creates a mole app which is a project that comes from our getting started guide and it was also usable as a base for most user facing applications you would make it devil then we're going to be building and creating a local fabric ledger using a demo on fabric
- 1:13
project and what that's going to give us is the ability to after we install fabric actually go ahead and have our demo runtime talk to fabric and then we're going to be deploying our great demo app code that we've compiled to the fabric ledger and so it'll actually go to the demo runtime in the demo runtime will then be able to talk to the fabric ledger itself then we're going in step four we're gonna start up our own jason endpoints which basically means we'll
- 1:43
get a nice consumable a consumable by our UI endpoint that can then just go ahead and talk to the demo runtime which talks to fabric but essentially your UI doesn't really need to worry much about the ledger or its underlying state it can just talk to this jason have points that is generated automatically from your demo code and then lastly we'll start up a react UI that'll talk to that json api endpoint and that API appoints won't really know or care that it's running on zamel or
- 2:17
fabric so we're gonna start the scenario first thing is we're going to create that project we're going to use the dental assistant in order to do that and we're going to go ahead and build our project and also this is really for later but demo comes dental assistant comes with a variety of cogent tools there's one in Java there's one in Scala I think there's one in typescript which is the one we're running right now that essentially takes your demo code and
- 2:47
produces classes you can just interact with more easily than then raw download code so we're just going to build that right now and then once that's done we'll move on to our next step okay now continuing on we're getting close to installing fabric but the first thing we want to do is install a dependency called SBT for this you could actually use a project called SDK man which manages which is a manager for a variety of SDKs those Java Scala
- 3:18
everything else really Under the Sun and it just makes your life a lot easier so now that we've done that we're gonna start sewing fabric this is actually going to take a few minutes because we have to download a lot of fabric binaries but we want to actually show you know exactly how long this takes which when we say takes 15 to 20 minutes to go ahead and deploy a demo application we actually do mean that you know none of this is pre cached this is all happening live and so of course you
- 3:50
know while you're waiting for that if you wanted to know anything else about sam'l we have our form for example so here I suggest that you either do a few minutes of meditation or browse the Q&A forum just so you can if you start to get interested in demo you can familiarize yourself with it a bit more and there's quite a lot of questions and answers here everybody's really helpful you know we have a lot of DEA employees
- 4:14
who are answering questions and we also have some non DEA members who are just enthusiastic about demo both asking and answering questions and yes so here is still downloading just a little bit we'll probably fast-forward slightly through this but it takes about five minutes total all right and now we have fabric installed and it's in our path so what we're gonna do is we're gonna actually start and run the fabric Network now and
- 4:59
so that's gonna start there and while that's going I'm actually going to hop over to the next step and start SBT SPT isn't now going to actually go and download a bunch of things we need also in order to communicate with the fabric ledger as with fabric and SBT this is something that you just have to really run once and then it's going to be fast from then on out but the first time you know we have to install a lot of dependencies so those will get downloaded um one other nice thing you
- 5:31
can check out you know while you're waiting for this to complete is the demo cheat sheet which gives you an overview of quite a lot of demo things if you've been following the other videos I actually go through a lot of this cheat sheet so if you want you can go check those out as well but essentially if you wanted if you're ever coding down and you need to remember how to do certain
- 5:53
common things in demo it's most likely here in the cheat sheet and of course this is available as a project on github so if there's anything you know see you know you can either make an issue or set the pull request and we'll love it really appreciate it and yeah so now hopping back home or its SBT it's just going to install some more dependencies you can also see over here that our fabric instance is up and running and basically just waiting for transactions now at this point and so we
- 6:24
actually have two SBT commands here one is just going to provision our ledger and then one is going to actually start the demo run time so this would be the one that starts the devil run time that runs against the ledger and here we're just giving a little extra addressable memory which is sometimes needed but also all these commands can be referenced over here you know fabric cause Atari and so the
- 7:06
ramiz here so if there's anything you don't understand about what each of these things do or you want to know more about it you know you can comment read the demo if ever read me and also if you wanted a version of this cata Kota but essentially to run it locally we actually have this is based on the deployment guide which we have over here which is essentially 99% the same as
- 7:30
cata Kota except for a couple small cat ACOTA specific things but anyway our ledger has now started up and as we can see here it's running on port 685 so that's great so now we're going to go ahead and actually deploy our demo application which is going to deploy to that runtime and so it's deployed the it deployed the dart file that we compiled earlier in that demo build step and allocated some test parties these are the names of the parties that will actually be able to
- 8:01
use in our UI later to interface with the application every party in down--all needs to be created explicitly so we'll be using these parties and now since that's done we're going to go ahead and start our demo Jason API which is going to start running and then now since that's up we're gonna do our last step which is actually building our you are so this is like building any other react to you I just going to yarn is going to
- 8:33
download all the packages it needs then it's going to start a local server and then we'll be able to to open it and and check against it so this part really isn't even demo it's just that were you on but we want to show it all also you know if you're starting to get interested in this stuff we also have a variety of getting started guy it's in exercises these are available in our Docs and they're also going to be
- 8:58
available in the interactive version that demos accomplish learn which is where you can get to all of these lessons I actually probably should have mentioned that earlier the one you right now is one worse I'm still just developing but it's pretty much ready to go so that should be live here soon where you can go ahead and you'll have a box over here where you can build deploy on fabric but if you wanted to come run through the getting sarai god you could
- 9:23
start that one if you wanted to learn how to test models with Emily could go there or upgrade that law applications quite a lot of things are here and we're constantly adding to this too so this page will improve - it's a little Spartan at the moment but demo comm slash learn has all these different guides that you can go through we also have a sandbox mode in demo so if you're not aware you actually don't need to run
- 9:49
fabric or anything to get started with demo you can just use the demo sandbox which runs a local sequel server for you and automatically just handles everything so that's really great when you're just developing your application and then the nice thing about download too is you develop in that sandbox and the code that ran in your sandbox runs 100% perfectly on top of fabric and on top of every other ledger that's out
- 10:12
Forte's or will support in the future so that gives you the ability to write your code once and then move it between all these different distributed backends or even regular sequel backends that you don't need to worry about the underlying ledger really that much except for the when you want certain properties of the ledger but your code and your business logic itself really doesn't have to
- 10:35
change so now our UI is up so we can actually go ahead and open the UI and here it is in all its glory or create some lab and like I said before we can log in as Alice Potter Charlie so here I'm gonna log in as Alice and what we're gonna see here is okay I'm Alice and you know what I want to go ahead and follow Bob we can then over its one of these terminals over here we can actually see
- 11:00
that we're successfully writing to our ledger so essentially what happens here is the UI what and made JSON API queries that talk to the demo runtime but then went and committed to the fabric ledger and so you can see that all of these things just happens very quickly and with having to worry about any of that and then you know if we were to go ahead and log in as Bob we can go ahead and see that oh look alice is following us okay
- 11:33
we'll go ahead and follow her back but the interesting thing here too is that because demo is very much about making sure that everybody interacting with the ledger has permissions to see the parts of data that they are allowed to see Charlie for example can't see that Alice and Bob are following each other on this network unless Alice and Bob explicitly allow Charlie to see this and it's it's it's designed in such a way that if Alice and Bob are following each other
- 12:08
or entered into a contract where they are both parties to the contract that have to agree to the contract both of them need to approve it in order for Charlie to see not exactly a hundred percent sure how this contractor structure on the back ends but just in general demo provides this great level of privacy when it comes to interactions between different entities on the ledger and it tries to do this irrespective of
- 12:36
the ledger it's running on but some of some of those things do depend on the ledger it's running on and probably getting a little off-topic here but it's just worth noting that demo really tries to handle a lot of this for you and make sure that whenever you're doing anything on demo that you're doing it explicitly rather than implicitly and yeah so that's basically our application you know and if Bob Charlie
- 13:00
wanted to go ahead and follow Bob Charlie can go ahead and do that and that's another transaction broadcast and saved on the network and yeah thank you very much for checking out this little run-through a demo on cata coda or well demo on fabric and yeah go ahead and check out this interface you know like I said it's at demo comm slash learn this one is not up there yet because I was just developing it but it will be up there very shortly and yeah thank you