 Great. You're live. Take it away. Awesome. Okay. Hi everyone. Very good morning. Good afternoon and good evening. Some of you, you know, maybe experiencing 18th of May and you know, while the presenters mostly will be experiencing 17th of May today. So it is going to be a, you know, very interesting session and I'm going quite excited to, you know, join this session. Now, what are you, Kevin? Yeah, thanks, Vikram. I, not much to say for me, I'm just going to turn it over to Peter Broadhurst here who's head of engineering at Colado and maintainer on hyper ledger Firefly and you'll take us through the introduction. Thanks so much, Kevin and Vikram. So welcome everybody. Great to be speaking to you today. The format of today, we're going to have a few slides about 20 minutes. So not too long you have to listen to me with the slide where, and we're then going to have a great panel discussion please stay tuned for that. And a discussion on some real usage of Firefly and with then Nico is going to take us for a live demo of the features of version one although and we'll have time at the end for for Q&A. So with that, let me lead off by. Before we talk about what's new, what's released, what's part of the V1 delivery. I want to step back and talk about the Firefly project and the problem that it's trying to solve. So, hopefully there's lots of developers on on the call here today. And maybe some of you are already developing web three blockchain applications, maybe some of you have been tasked with trying to develop your first one. And the reality is, it's a complicated task. It's a task that needs a new and different approach to building an application to what you're used to with the traditional web two applications. You've got to choose a blockchain, you've got to work out how to integrate with that blockchain. You've got to think about tokens, and how the token economics fit into your use case you've got to work out how to account for the digital assets that you're going to form a core part of the blockchain. Think about keys, think about what data can go on the chain, what data can go off of the chain. There's a lot of plumbing before you get to actually building a really interesting application. So a lot of these are the very first challenges you hit. You open your code editor and you're presented with a dizzying array of complex new tools and very hard low level problems to solve. And then as you go on through the project, you find that things just, just get get larger you need to think about well how many blockchains am I integrating with is it one is it multiple. How do I get the level of reliability and scale that I need for production deployment. How do I build a way to see the history, which the blockchain itself is not able to return to me natively. How to almost certainly if you're here interested in hyperledger projects, you can think about things like security and how an enterprise solution to integrate together. The approach the firefly project is there to provide a solution to provide a stack to provide a platform that's open that's pluggable that is part of one of the leading open source communities within the, the Linux foundation that gives you a starting point that works a starting point where you have a pattern, a starting point where you can see the shape that your application should be if it needs to be a blockchain application, and you don't need to start with the public plumbing. You can start with the business logic, you can apply the pattern and start building your application. This is true for every single other type of application that you build it's true for all various types of web three and enterprise applications in the past. Why is it not true for for for blockchain. That's really the mission that the firefly project started off with was to make a pluggable, easy to use development framework for building enterprise grid web three applications that embrace tokens that are able to deal with multiple different blockchain platforms. The journey so far. The the projects actually for people like me and actually started about four years ago now some of the lineage of the code in the projects has has has evolved over that time period. But then in June 2021, we actually contributed to that code from its original home inside of collido to the, the hyper ledger open source community was about 75,000 lines of code at that time. And in September 2021 we moved from a lab to a full project inside of the hyper ledger family. And in where we're talking now, just after the the one dot oh launch, the community is now extended that original contribution to over 200,000 lines of code. And it's really quite a complete set of features for building web three applications. It provides a gateway for connecting to smart contracts across multiple different blockchains. Not just blockchains within the hyper ledger stable, but obviously including those. So hyper ledger best suit, but also all other the theory and blockchains and hyper ledger fabric as well all inside of one API front door. It provides a brain and orchestration engine will talk about that for the pieces of your application, which are about private data that needs to be integrated with the blockchain, as well as those on chain blockchain smart contracts, a full API for tokens that provides tokens as a first class API on the platform and knows how to plug in the standards that are in wide adoption, of course many blockchain networks in production today. And as well as the core capabilities of the platform, the version one sweetest you'll see has a lot of features for developers, which are beyond just the code. It has a CLI has a user experience. It has a way to get yourself running in just a few minutes on your laptop as you'll see from Nico later in this session. So let's just talk for a minute about the the capabilities that it has and this this architecture with the colored sections called out here shows the features of firefly and we call it a super node. And really, this evolving term in the web three space fireflies the first open source project trying to tackle the problem of the super node. And this means it is not itself a blockchain it is not another DLT it sits around and above the the blockchain it sits as that middleware tier in between your application code and the blockchains that you're integrating with, and it provides API's it provides API's that allow your application to integrate with any blockchain smart contracts, it will generate you an API for that smart contract. It will give your application access to all of the events that are inside of that smart contracts and all blockchains are an event driven programming paradigm that's just the way it works in a decentralized system. So giving you access to be able to build these event driven applications with an easy to consume friendly API. Separate to that it provides a set of higher level features for flows data flows and business process flows. The way that you can exchange data between parties that needs to be connected to the blockchain, but a lot of the time cannot be on the blockchain itself. In enterprise scenarios, it's common for there to be a 10 to one between the amount of data that needs to be out of the blockchain to what's on the blockchain. And that means privacy, it means being able to exchange data individual party to individual party and connect that down to the blockchain, as well as being able to put data into the blockchain itself. And then digital assets is the third major pillar inside of the the Firefly Supernode this ability to not just be able to have smart contracts that are digital assets, have the audit history of chain of digital assets. Have API and wallet management and the ability to to connect to those digital assets, move them see the history of them see the lineage of those of those digital assets. The way I think about this is that these these token constructs these digital assets are to blockchain what create retrieve update and delete art databases. They're the air and water of the system. The blockchain really with the without these coding constructs that the blockchain is sort of incomplete. So why are they not API's that allow you to address those directly. So Firefly provides that in an open and pluggable way. In order to do this, it actually needs a brain with a database to store the private data that you've received to buffer that be the audit gateway for that between your application and the blockchain. So about that. And there's actually a lot of engine room logic that's needed to coordinate all these different streams of information together to make sure that you don't process the private data. Without processing the blockchain data to make sure that if you're just connecting directly to the blockchain, you've got rich smart contracts and you want to connect to them to make sure that you receive every single one of those events, even if your application is offline for a period of time. And then the security controls that you need to be able to integrate with that. And the tooling and we'll come back to this that you need as a developer to be able to get started building your applications. So that's what Firefly 1.0 is in a nutshell. We're going to talk briefly through some of those capabilities in a bit more detail. So we look at the difference between what you would need to build with or without Firefly. And existing users of Firefly as it's involved and you'll hear some of them talking later have told us that about 80% of the code that they would need to build is provided for them when you start from Firefly. So you need to build 80% less code. Now that's 80% less boring plumbing code, which gives you all of that time back to focus on what differentiates your application, the business logic, the user experience, the use case, the token economics, the value that you are uniquely providing rather than building event connectors and low level blockchain connectivity and wallet management, document transfer, all of these low level capabilities that on their own are very boring until you've built a use case on top of them. One of the features as an example that Firefly provides is your existing smart contracts, whether they're on a fabric channel, whether they're on an Ethereum sidechain built with Hyperledger BESU or Corem, whether they're on a public blockchain, but that contract has been there for years on public main Ethereum, you're able to point Firefly at the definition of that contract, and it will generate you a reliable and robust API to be able to interact from your application with the methods on that smart contract. So a generator for APIs for any smart contract on the blockchain. And not just in the transaction direction, but also in that event streaming direct direction, it has a built-in event bus, which is able to track which events you've seen from the blockchain and which you haven't. It will transform them all into friendly JSON payloads and deliver them to you with scale and batching and an optimized delivery, but also with reliability. So if your application needs to stop and restart or it needs to scale, all of those features are built into the event bus so that your application doesn't need to do anything special, it just connects and receives the events that hasn't processed yet. Seems straightforward, but this is so much that would need to be built from scratch if you if you needed to just start from the war RPC APIs of the blockchain because they are such they're so low level on all of the blockchain technologies. And this is a very pluggable interface. So there's a connector framework that allows lots of different blockchains to plug in. And, and there's actually a lot of work happening at the moment to make that even more friendly to plug in an additional blockchain, and it doesn't need to be an Ethereum derivative this can be any blockchain technology that can plug in. So so there's a lot of a lot of innovation going on actually increasing that catalog to deal with lots of different blockchains UTXO based blockchains you know think Bitcoin here could be a connector for this as well as something like fabric. That's the level of flexibility built into the into the application. If we walk up a layer and we talk about flows and we talk about what enterprise business networks look like a lot of the business to business interactions are private and secure. They often are connected to which on chain transfers of data value of tokens, but the business context is private. It's sensitive. It needs to be coordinated off chain, and the data needs to flow off chain, and the interactions with the core enterprise systems, the core system integration, the triggering of business processes, the triggering of sensitive, you know, 20 year old special secret source logic inside of your enterprise needs to be coupled to the blockchain, but it isn't on the blockchain. So, so Firefly has three separate, separate tiers, which are sort of pluggable layers in the architecture, the blockchain itself, a shared storage layer, which can be IPFS and is also pluggable to all kinds of other shared storage, which is data that doesn't fit on the blockchain itself but needs to be shared with everybody, and then a private data bus, which can be as simple as the, as the off the show of open source plugin that shares mutual TLS between parties point to point or sophisticated as a message queuing system that you've built for your business network completely pluggable. And when we talk about digital assets as this first class construct on the API that also extends to the data model the state that's inside of Firefly and we'll talk a little bit more about how Firefly is really a brain. It has knowledge of the state of the blockchain it's constantly keeping up to date with that state. So if you point for example, Firefly at an existing token on public Ethereum, it will index every transaction that's ever happened on that token and build you a fast rich query database with a very nice experience on the front end with an explorer, but will allow you to explore the history of all of those tokens that existed well before Firefly came along so to be able to provide that that sort of institutional scale front door to integrate with these token economies to be a gateway between your enterprise and all this value that is out there, or to allow you to build a new token economy with rich tooling and API's to model those digital assets launch them and and interact with them. And I keep on mentioning this brain term and it really is true if you look at the core of Firefly, what you'll actually notice is that a lot of the code is in this orchestration. There's lots of technologies out there that this will resonate with when you think about a technology that we're all familiar with now like Docker. Docker existed for a period of time. And on its own it was a very war tool. And for anybody like me who works with Docker every day, we don't just use Docker we use an orchestration framework on top of it we use something like Kubernetes and others are out there but Kubernetes came along and provided this orchestration layer that allowed you to manage things at scale understood the state of that low level and elevated it by giving you a sort of a brain and orchestration layer on top. That's what Firefly intends to do for the low level blockchain by providing this plugable framework, it's providing that state that management that coordination system between the on chain data the off chain data, and the the ability to query that have fast access to it in which API is to coordinate with it so we really do think of that as a stateful brain, not just a gateway to connect. And that means it does manage lots of different types of states. We talked about digital assets data, data that you have or haven't transferred to other parties data that you've received from other parties on the business network which may not all have come through the blockchain, the blockchain state itself, those those blockchain events the blocks they're in the transaction hashes. And the network state, what who are you integrating with what are their identities how they established those identities, how they proved ownership of tokens and and the the data that you have received from those other other parties. So that's an overview of Firefly as a whole and you're going to see some of the rich tooling that comes with it, which will allow you to get going with this really quickly. And with no further ado, I think we're going to, we're going to stop talking about it and we're at a high level, and we're going to move to the panel and you're going to hear from some people who've implemented this directly and the value that it's provided to them. And then we're going to drop down and you're going to see it's in action so I'll stop the share now. Maybe you could share a slide 20. Yeah. Oh, could you reload the deck I have a new slide in there. Yeah. All right, great. That was it. Thanks for our hand over to you now. All right. Thanks so much, Peter. Well, I wanted to preface the panel by saying that Kaleido has a privilege to work with, you know, thousands of chains and networks, many global blockchain initiatives. And I'm really very honored to introduce our esteemed speakers today. These sets of speakers today represent some of the highest standards of excellence we've seen and their solution approaches, their architectures and their business results. So we're honored to have Jason, you, who's the CEO of trade go Vinod Sharma, the CTO of a send bit and coon job to crit impact the head of engineering a platform engineering get a send bit. So I'd like to just go with each speaker and ask you if you could share a little bit about yourself and the blockchain initiatives you're leading, and perhaps we can start in the same order. Jason, if you'd like to go first. Thank you, Sophia. Thank you for inviting me to join the meeting as my owner as big owner. My name is Jason you I'm CEO of trade go. Before I found I found trade go I have worked for some time for almost 10, almost 10 years as the head of the risk management management team from 2008 to 2017. From 2017 to 2019 I found the first trading platform in China. The name is cruel, cruel, cruel oil.com. But unfortunately, it failed. Now, also I forgot a lot of lessons from, from that failure from, especially from the commodity trading e-commerce platform from different angles like business technology and regulations. Before from 2019 I started the trade go project and after two years very tough paperwork, the company kick off officially this January 1. Our main product is to digitize the core trading documentation, which will help the participants to enhance their whole trading process. We try to protect the user data, user data physically based on blockchain, and also we can bridge the asset and the capital with a very high quality. We work with Clado team closely in the past one and a half year. I believe Clado is a very reliable team and also I believe Fireflywheel is a very great start, a great project and will be the start project in the future. Thank you Sofia. Thank you Jason. Maybe next Vinod, if you would like to go next, just if you could share a little bit about yourself and then the blockchain initiatives that you're leading. Thank you Sofia. Thanks for inviting and sincerely thanks to you as well as the entire Collider team for the wonderful support you guys have been always been giving us. So myself Vinod, I'm actually working as a CTO for AscentBit company. AscentBit company is a 100% owned company by CP Group. And it's under the polymer rate which is probably the largest in entire South Asia. And in some matters it is actually the largest at the global level. So for the CP Group, we have launched or planning to launch, sorry, quite a number of initiatives under supply chain as well as our own cryptocurrency. So we have those plans going on. And we've been using Collider, the platforms plus especially around the Hyperledger Firefly. So I think I'll speak about that later on, but on my little bit of background before coming to Thailand, I was based off Africa, where I've seen probably the blend of technologies on one extreme it is quite outdated on the other hand it's quite advanced so I don't know. But normally people think when they talk about Africa, they think it's quite outdated but I've lived there for eight years so I can tell you it's not the case. But now in Thailand I have a team of about 700 engineers. So my engineering team is about 700 people. And the focus is now shifting from the traditional technologies to the blockchain which is I think we are under progressive track. And the projects which we are true, I'm not sure how many people are aware of the True Money brand which is the largest, the payments mobile payments and mobile money systems in South Asia. And it was the first unicorn in Thailand last year. Yes, that's the initiatives which we are doing and now we want to do the similar trends into our new startup as in bit I hope we will be succeeding the same way as we have succeeded in the previous which is thanks, thanks, Sophia for that. Thank you Vinod. So very impressive from our first two speakers and Kunjab would you like to share a little bit about yourself. And I guess some of your work with blockchain. Thank you for inviting me to join the panel discussion. So I have some background on the open source project. Before I joined as a bit company, I worked in Agoda, which is the one of the biggest hotel hotel reservation reservation in Asia, and I work with the open source project called open stack. Yeah, in 10 years at Agoda, we grow like 1000, 10,000%. Yeah, and the infrastructure, I can see the generation evolution from the legacy data center move to private cloud with using open source community. I can join the community, I can learn from the community and I also sharing back to the community. And after I moved to the true money CP group, as I working with Kunjab, I work to transform the legacy data center into the hybrid cloud data center. So I see the generation of transformation. Now I'm focusing on the SMB company. So I see the transition of legacy infrastructure to the new blockchain infrastructure with help of the open source project from Firefly and from the hyperlature foundation make me very confident to build it for the enterprise. Thank you, Sophia. Thank you, Kunjab. I think a follow on question for Vinod is some thoughts I think bridging on the open source thoughts that Kunjab shared. I know you've run many projects with hundreds of engineers and different capacities around the world. Can you share some thoughts on the trade offs when you're building for writing custom code that's proprietary or working with consultants or different types of integrators versus working with a large open source project like Firefly. Thanks, Sophia. Of course, there's a huge difference on such kind of projects when you work with consultants whose focus is actually always slightly different from as a customer what your focus is. But when you try to do something which you want to build yourself, you want to put your hands dirty and an inexperience on the technology with the help of the open source. I think that gives us a lot of advantage and exposure to the real experience. So that's what we say normally in my team, I mean Kunjab was aware in the entire scene. So we all really say that get real, get life. You know that's how we be. So we don't want to live an artificial life. We all have NI so we believe in natural intelligence rather than being an AI part. But anyways, not going to that direction. So now coming back to, of course, the open source technologies always helps you in a far more better compared to the proprietories because the proprietary technology is what I believe in my experience, not only here and from my entire experience from the last 17 years, I think the one element which differentiate the proprietary and open source, the open source technology is always gets built with the idea in the mind to help and allow others to grow along with that technology grows. But the proprietary is always have the business and the commercial angle. So I think that's what it is a key differentiator, because even I use the proprietary software it has licensing and all those things. Now, the time to market because when you use the open source technology, it always helps you to bring the things which you want to bring to the market in a much faster and easier way, compared to the the proprietary because you are dependent upon someone who has to guide you step by step. And in my words, personally in my field is like a school feeding. So I think proprietary technologies, and there's another difference between proprietary and the open source. And of course, when you talk about the adoption of best practices, the cost, the extensibility the scalability and the flexibility is much more higher in the open source, compared to the proprietary. But looking at what you want to build in terms of the, what your customer needs. So you really focus on your on your goals rather than keep putting about Oh, if I use this much I have to pay this much if I use this much I have to pay this much. And that fear that the cost gets away, because you're trying to introduce something to the market where you want to try before you get confident is it will be success or not success. And I think that's where the private the open source really helps you. And when you again work with the open source, it's always helps to create your network, much bigger and much faster. And that's the another personal experience because we are not able to disclose but we are working on a certain project where we really need to touch and of course we all know is it's not a technology which is which which you can do it just alone sitting in your own in your own are in the center, you really need other participants. So from that perspective, I think in our projects which we are doing, it's really helping us to to come up with that concept where we are able to collaborate and share what we can share and and ask the others to join, which is actually helping us, not only us, but the partners as well to try and test, and then relies our dreams what we want to do. So, I think those are the few things which I can mention. Okay, thank you. Thank you. Bridging on a comment you made with the, the fact that there's multiple parties involved and this is decentralized was wondering Jason as CEO one of the world's newest and fastest moving trade finance initiatives. You look at Firefly in terms of enabling speed to market and helping you work with decentralized in a network with companies that sometimes are collaborators and sometimes could be competitors so if there's any considerations or thoughts you have there. Okay, thank you Sophia, you know, I'm not an IT professor and also trigger is not it company so most of my reason is from from I think from business, business perspective. You know, you know, I think the The reason for for us to choose a, you know, open source solution to it's very simple. Because, you know, trade good business is focused focus on international trading scenario. And so far the beginning scenario, most of them are importing to China. So, the clients we face every day, like bank trading company and shipping company and other type company, half of them are from a different country, and half of them are from from domestic China. I think if we choose any, any, any kind of technology that supported by or controlled by a country, a company from a single country. I think maybe this is kind of disaster for us because our clients, especially in commodity trading industry always prefer the technology that support is from their own country. I know, I know, maybe sometimes from technology side, it's ridiculous, maybe, but you know, it just happened every day frequently. Our clients are always asked us to find a solution that supported from from their local country. So, I think I remember I also discussed this situation with Steve and Sophia last year, when the fire for firefly 1.0 is under the preparation last year. I think the result for us is very clear. The only solution is open source. So the answer to left to me, it's very, very clear. Ask my city to find a cheap and fast open source framework. I believe firefly is one of them. But that's my answer, Sophia. Okay, thank you, Jason. And I wonder if the node you had something to add and then she crit. I think you had a diagram you wanted to share as well just to show a little more details technically on how you're leveraging firefly. So the note if you'd like to go first. Sorry, I just thought of adding this very specific example and specific experience we have just, I mean, still going through very closely related to the firefly. So I'm sure a lot of people in South Asia are aware of that. In Europe we got GDPR similar thing in Thailand we got the PDPA, which is the Personal Data Protection Act. So in order to now meet that so I mean, when it came in, we were not sure how this will impact our projects, but slowly gradually and as in when the chapters got started unfolding. We started realizing that a lot of projects and what we were doing was supposed to be undone, unlearned and then redo and relearn. So if we would have done what we thought that we have to unlearn and undone and then start relearn and redone, I think would have taken a very long and probably not the time but as well as the cost and efforts as well. But the firefly really came in as a rescuer for us to support so I can meet the PDPA requirements as well as, you know, support and help the business, not to go beyond certain level of changes. So very specific example like right to be forgotten. So, now if you write the data on blockchain, if you build the profile on blockchain you have the entirety of my name address everything is on sitting on blockchain. Now, imagine the customer calls in the call center. Hey, I want you to be forgotten to forget me. It's very simple for the customer to call and say that but how difficult or how easy or how tedious it is for me as a back in person to make sure that I comply because customer is just trying to avail the law, which is there in the country. So I think that's where we saw that firefly can really help us to see what can on chain what goes off chain how to combine the two together, link together so that we can make sure that the PDPA law has been followed. And how we make sure that what goes on chain in terms of, for example, it goes only the hash and then the data remains off chain how to link the chain data and the off chain data. So, so those that way the privacy and the protection and the blockchain underlying features the inability is remains intact so I think. Let me say that again, the five like really came in as a rescuer to shorten those that process of unlearn and then redo and relearn. So thank you so much for introducing this wonderful and amazing tool. Thank you. So I think that's a very practical example of business implications, leveraging best practices in the technology and illustrating a second generation of building blockchain projects that builds on a lot of some of the mistakes in the first generation of building. So now you can move faster more compliant more cost effective. I think just to close out was there something you wanted to share a cool job. If you wanted to talk about. Oh yeah. Okay. And you're on mute. Good job. You're mute. Okay. Okay. So as a SNB platform, we're focusing to build a blockchain digital platform. We're focusing to build as the two big platform, which is the digital asset platform and the trust assessment platform for the, we can call as depth and tap on the depth. We can build for digital asset tracking focus on build well that we can keep the keep tracking the tangible asset, also intangible asset that leverage the Ethereum compatible blockchain with the open source quorum and hyperlature based on the platform. We use for proof the authenticity of the data that we can make sure trust and we can revelate on the hyperlature fabric. Yeah, underlying technology and in the middle. We think the interoperability layer is very important. And so we build a blockchain education so with the tooling that working with the hyperlature of firefly that to ensure that we compliant the privacy security and the compliant. Yeah, as could be not mentioned we have the law and regulation the PDPA to be compliant in Thailand. So we need to focus on this one. And in the last enterprise the interoperability for enterprise is very important for build cost domain and also how to the data flow on off chain and data chain education. Yeah, this is very important. Could we not would you like to chair additional thought on this. No, thanks thanks for job I think you already shared, but I just wanted to give a word of questions that these jargon's dap and tap, or the way we break down blockchain. Probably this is our own kind of analogy that how we break down the blockchain. So it may it may may not resonate with the with the rest of the world, but this is very much resonate and very much helpful. In case of a send bit that if you really want to break down the blockchain this is the way we break down and we coordinate and organize our team and our systems. Thank you, but blockchain, or probably a collider systems or five fly. I think it's a wonderful it really doesn't matter. We are on tap or tap or ethereum or. So it's really helpful. Thank you so much. Thank you Vinod. I think multi protocol flexibility and choice. Those are all very important things we hear across many use cases and I think, really, we feel very privileged to have you all Jason Vinod and coon job. It's always helpful for people to hear about the use cases, how people are using the technology, the rationale and the results are getting so so thanks so much, and we're going to transition now to a live demo. So you'll get to see the technology in action and it has some amazing user interfaces and experiences so I think you'll like what you're going to see. So handing it over to Nico, and thanks again to the our three esteemed guests and panelists. Thank you so much. Alright, thank you Sophia. Hello everyone, I am Nico Geier and I'm excited to be able to show you firefly today. Before we jump into the demo I have just a couple of slides, just to kind of set the context for what we're going to be looking at in the demo so we kind of know what we're looking at as we are looking at it so I'm going to go ahead and share my screen and hopefully you can see my slides. Nobody's complaining. Okay, great. So, just want to start off briefly with talking about what we're going to see when we built firefly we wanted to create a really easy to use developer experience we wanted to be quick and easy for people to get started with. We wanted the experience to be powerful enough to meet the needs of experience web three developers, but also kind of, you know help people get started who maybe this is their very first web three project, we wanted to use tools that felt familiar. We also wanted it to be able to run everything offline on a laptop, even if you are, you know on an airplane, you can you can work on building an app against fireflies API completely offline. Once you've downloaded everything ahead of time so that's the developer experience that we're going to see. So here's what we're going to run today I'm going to run the firefly CLI and I'm going to create a local developer environment on my machine. This is using all open source tools these are all you can find the source code for all these tools in the hyper ledger firefly get repose. So that the CLI behind the scenes will use Docker compose to run all the components of a super note right on my laptop. Here's a little picture. This is a picture of two different super nodes that we're going to be running. I'm actually going to be running three. I didn't show the third one here just for the sake of space. But within our super node. There is a firefly core and this is the brain that Peter was talking about earlier this is the orchestration engine that and it also provides the API layer and it also hosts the web UI layer that we'll be looking at as well. The firefly core talks to a lot of different systems each of these is going to be running in a different Docker container on my machine including a database data exchange, a blockchain node, a tokens connector and a variety of other things. Outside the super node, we are also going to be running an application called the firefly sandbox for each member of this firefly network that we're going to be building here. The firefly sandbox you can think of as an application and end user application that's written to use fireflies API. So it's both an example of how you can build an app. And it also provides code snippets that you can use to copy and paste into a back end application using the firefly SDK to build your own app. Okay, so this is kind of the topology of what we're going to look at. So we're, I'm going to be running firefly in what we describe as a sort of a multi party network or multi party mode, where there are there multiple firefly nodes you could think of each of these as being run by a different organization in in a network. So we're going to look at the firefly dashboard and and the firefly sandbox. Those are screenshots of them, but even better than a screenshot is actually seeing the real thing so let's hop over to my other desktop here. This is the firefly Explorer or the firefly UI. This is a web front end that is being hosted by firefly core and it's sort of an inspector of view into the system. So in here, we can see a network map, we can see, I have three members and I've labeled them red, green and blue. So here's the red number and this is the I've also have three different Chrome browsers up in here. A red browser, a green browser and a blue browser, just so we can visually compare. So here's our network map. Right now I haven't run any transactions on this network. So that's why you're seeing no activity. But let's do some transactions now. I'm going to open a new tab and I'm going to open the firefly sandbox. Actually, what before I do that what I didn't show you is that while before I started sharing a screen on my other desktop here, I have run the firefly CLI and I've started a network of three members and it prints the URLs for the web UI and for the sandbox for each of these those are the URLs that I opened in my browser separately. I've also deployed an ERC 20 and ERC 721 contract to this chain. On the right hand side of my screen, you can see the Solidity source for the ERC 20 contract. It is, it extends and opens up one ERC 20 contract and it adds just a little bit of custom functionality on top of that to be able to mint and transfer tokens with data. So we'll come back to this in just a little bit. But what I want to show you first is the firefly sandbox. So, like I said, this is both an example and user application that and also shows you kind of how to build each of the different things that you can do with firefly into your own application. On the right hand side here, we have kind of a form that we can fill out and across the top we have these three tabs, and these are really the three major buckets of features that are in firefly 1.0. Sort of the things that provide the functionality, those three pillars that Peter talked about, you know, apps, flows and digital assets. These can be grouped into these three categories here. So what I want to start with is custom contracts because that's, that's the thing that people oftentimes think of first when they think of, hey, I want to build a blockchain application. Oh, I need a custom smart contract. How am I going to do that? So, excuse me, for this example, we're going to use this, we're going to use a custom ERC 20 contract, the one that I just showed you a minute ago. But this could be any custom smart contract. It doesn't have to necessarily be an ERC 20. It could be something entirely different. What I'm going to do first is I'm going to define a contract interface. A contract interface in firefly is a way to describe a custom smart contract or any smart contract in a blockchain generic way. It encapsulates important specific blockchain information, but it also describes the entire contract in a way that firefly, I could describe both a solidity contract or a fabric chain code using a firefly interface. So for blockchains that have a built in format to describe, excuse me, to describe smart contracts, their events, their functions, their parameters and all the type of information, such as Ethereum's ABI format. There is an API built into firefly to automatically do this conversion for you. So if you have the ABI for your contract, you can actually copy that right into the Firefly Sandbox, which is what I'm going to do here. I'm going to pick ABI, Solidity Application Binary Interface. I'm going to go back over to my source code. And after I've compiled the contract, I get a JSON output, and I'm just going to copy the ABI here. It's long. And I was going to paste that right here. I'm going to give this fire, this contract interface a name. We'll call this just ERC 20 with data. And we'll say this is version 1.0. And I'm going to run this. What happens when I run this? We'll see off on the right-hand side. There are some things going on. But before we look at the events, immediately we get back a 202 accepted. We get an ID here that we can use to track that request through the system. So Firefly has a very asynchronous programming model that's event-driven. And so when you submit things to the system, if it is accepted into the system, you'll get a 202 and an ID back. And then the general pattern is that you either have a WebSocket or WebHooks that are listening for events coming out of Firefly. So in this case, we've received some events. And those events indicate that we have broadcasted this Firefly interface to all of the other members of the system. And so what this means is now we can go into our dashboard. I can reload this and we'll see that there was a batch pin transaction that happened. Let's go look at the off-chain. We can look at data and we can see there was a definition that was created here. And this is the definition of my smart contract that I just uploaded. Well, that's great. We submitted it so it's appearing in our dashboard. But because it was broadcasted to all the other members of the network, I can hover over to the blue note as well. And I could look at the off-chain data tab here and I can see the same definition. So when we created a definition in a Firefly network, it's a way of defining a piece of data or defining some sort of structure that all the members of the network should know about. In this case, it's this contract that all of these members will be interacting with here shortly. So that's great. Now, how do we actually use our contract? So the next step is to build an API endpoint for it. So to do that, we're going to register a contract API. We're going to select the contract interface that we just created here. And I'm going to call this ERC 20. And then I need to give it the contract address. So I'm going to go back over to my terminal where I deployed this earlier and just copy the contract address. I'm going to paste this here and run that. This will also get broadcasted. You can see we received an event that the message was confirmed. And now what this has done is this has built an API endpoint that we can use to interact with our smart contract. In addition to just creating endpoints, it's also created full open API 3 spec and a swagger UI that we can open and we can interact with our contract right here in our browser. So let's mint some tokens now. I can invoke methods on the contract so I can invoke mint with data. I can click try it out. Let's mint 1000. We can send some data with it because this is our custom mint with data function. I don't need to send any particular data right now. So I'm just going to use an all heck string. And then I need to provide the two address. This is the Ethereum address that I want to mint these tokens to I'm going to mint them to myself for now. I'm going to find my Ethereum address for the red node. I'm going to go back to the Firefly Explorer, and I'm going to look at the network under organizations in the network I can see the list. And I can see this is my, my org or your org. So what it says, I'm going to click here and then under the verifiers section there's an Ethereum address and this is the address of the wallet for the signing key for the red node in the network. So sorry to my swagger UI and paste that here and I'm going to click execute. So immediately we get a 202 back and what I'm also going to do now is we're also interested in when when tokens are transferred on the network we would be great to receive events for those as well. We can see on our swagger that there are listener endpoints as well to set up a listener to tell Firefly that these are important blockchain events to listen to, and I would like you to notify my application when you receive them, we can do that right through the sandbox. So we're going to create an event listener contract listener for my ERC 20 contract on the transfer event here and then we'll call and we'll send this to a topic called sandbox. Okay, so we have we've created that and now I'm going to go check the just to make sure we have some balance in there. I'm going to do a query now this is a read only operation. Click try it out. I'm going to paste again my, my address here and we should see we have 1000. Yep, we do. Okay, great. So let's let's do a transfer quick and we should see that event come in. I'm going to go back up here to in, we're going to invoke because this will perform a blockchain transaction, try it out. Let's send 100. And let's get the address of the green note this time. So again, we'll go back to the dashboard looking at organizations, and under the verifiers will get the Ethereum address of the green note, and we'll paste that here. Let's go check the balance of the green note down. So we'll go back, let's go back down here to query the balance of it. Let's check our own balance first just to make sure. Yep, so now we only have 900. And we'll check the green node and green node has 100. Okay, that's great. Let's take a peek back at the sandbox, we receive we see that while we were doing that we received some blockchain events. So because we set up that contract listener, we can start receiving events from this custom smart contract as well. Let's go take a look at the Firefly Explorer and see what was going on inside Firefly while we were doing all these things. So we can look at the blockchain dashboard. We can see that there were several batch pin events from broadcasting the, the contract and the API. We can also see that there were two transfers here as well. One was the actually the Mint because Mint actually just does a transfer behind the scenes. And the other was was the transfer of the 100 tokens to the other note, and we can click on it and see the output. See it was from this address to this address and we transferred 100. So that's great. I'm running out of time here so I'm going to try to speed things up here a little bit, but this is the sort of the kind of the building blocks of being able to work with custom smart contract logic with Firefly and just really developer friendly APIs. Now as Peter was talking about earlier, hypothetically what if this was a token contract that's been on chain on a public chain as an example for, you know, maybe even years and there's been a lot of transactions on there. There's a history of what has already happened on this chain. That's where the Firefly token connector comes into play and that's where the concept of a Firefly token pool is used. So to do that, even though this contract is only existed for about five minutes and we've only had two transactions on it. We're going to use this as a hypothetical example here. So let's create a new token pool. We'll call this ffc for firefly coin. We have the symbol is ffc. This needs to match what was in the smart contract when it was deployed and I deployed it as ffc. It is a fungible token. We could also select non fungible if we wanted to reference our ERC 2721 contract. But I'm going to go back here and grab the contract address of my deploy ERC 20. And I'm going to paste that here and I'm going to run that. So ffc is there was we created a token pool and then a bunch of other things came in. And what that was is the token pool. Sorry that the token connector was talking to the blockchain and it began indexing all the transactions that were already on chain. So now if we go back and look at our Explorer, we can go to the tokens tab here. And now this is a brand new page that's just lit up because we've created this token pool. We can see account balances for everyone that has a balance on here. And you'll notice that there's a lot of zeros here. That's because our contracts, if you're familiar with ERC 20 has the concept of decimals. And so this lets people work with fractional tokens, even though the Ethereum EVM only supports integers. Likewise, the Firefly sandbox also provides ways to mint and transfer right here, right in the sandbox UI. So you could go straight to here and you don't have to actually interact directly with the swagger. If you wanted to, I just wanted to show that sort of building up from a custom smart contract all the way to these rich tokens APIs now. So let's mint 100. Now again, this is going to be 100 times 18, just because of the way this is represented in the user interface. So I'm going to run that. And then I'll demonstrate a transfer now to, let's see, I think we transferred to green last time. Let's transfer some to blue because he doesn't have any. And we could optionally attach a message to this as well. For the sake of time, I'm just going to kind of scoot through this here a little bit. And then finally let's burn one, just so we can see what that looks like in the dashboard. So I ran several different token transactions there. Let's hop back over to the Explorer and refresh. Now we can see our new account balance has been reflected immediately here and we can see the other transfer. We can see who it was from to the signing key that was used, the actual data from the event. And here's our burn as well. So some amazing things just make it super easy to do stuff with tokens. I don't have time to also show non fungible tokens but you can do all of the same things with non fungible tokens as well through here and it's really powerful really easy quick up to get up and started. So I'm going to touch on just real quick and then and then we'll do some Q&A is messaging. Messaging is a foundational component in Firefly. It's a, it's a very foundational component in building distributed applications. I have data on one system that I need to send to another party or to another system. That could be a simple string. It could be a JSON object. It could be a JSON object that conforms to a certain JSON schema that I've defined that represents an important type that members of the multi-party network have agreed upon. And it could be, it could actually just be a file as well. I could click here and I could upload a file directly to here. So this is going to be a broadcast message. You know, just like when I was broadcasting the Firefly interface. This is just going to broadcast a strength to everyone. So I'll run this. I'll wait for my batch pin to be confirmed here. And then let's go take a look at the blue note here. We should see under off chain data, which is where we're at already actually I can click here and here is a message. I can click the green node and look at off chain data as well. And here is the message as well. So in these cases, as someone mentioned in the chat earlier. Yes, the there is a blockchain transaction and the payload of the message is hashed and it's pinned to the blockchain. The actual payload remains off chain remains in a shared storage mechanism. And this is what we're seeing here. This is what's why the data is under the off chain tab here. Otherwise, we can also send private messages as well. So under private messaging, we can send one just to green. We'll say this is a secret message to green. We'll run that. We should be able to see this in our own dashboard. Let's go look at off chain data. Indeed, there's our secret message we sent to green should be able to see it in greens dashboard. There it is. But if we go back and look at blues dashboard will will notice that the blue node does not see that message at all. So that's just a really quick snapshot of messaging messaging is really important. There's was a lot of different features in it as well. I don't have time to go into all of them. But hopefully this was just a very quick taste of some of the things that you can do with firefly and gives you an idea of how you can get up and started with it. There are guides in the documentation that will walk you through using a firefly CLI installing a firefly CLI using it to set up the same environment that I just built running the firefly sandbox and begin walking you through each of the three sections of messages tokens and contracts. So thank you all very much for watching and listening. I hope this was informative and I can't wait to see what you will build with firefly. Thank you very much. I'll turn it back over to I guess to Q&A at this point. Do we just talk or is there a mechanism for raising our hand? Yeah, I was wondering the same. Kevin. Yeah, Paul, take it away. Well, first of all, thank you all for the presentation. It's very helpful and I'm very excited about it. I've actually been exploring firefly for some months at this point, so I continue to be very excited about it to get to the question. So there's been some discussion about the multi-chain reality of the future, and I certainly agree with that. It's becoming very central very quickly to the work that I do. My understanding at the moment is that firefly, when you stand up a supernode, you stand up a supernode binding to a single chain at the moment. That chain can be one of the several that have been named here. First of all, is that still correct? Secondly, if so, are there plans to extend firefly to do simultaneous cross-chain flows, meaning that you could point it at a basu instance, a fabric instance, a corda instance, all in the same firefly supernode? And then thirdly, with respect to privacy, is there now or are there plans to integrate support for some of the zero-knowledge proof-based flows and interactions generally that would facilitate this kind of not just cross-chain but sophisticated privacy enhancing or privacy retaining even interactions that are not possible without zero-knowledge proof technology? Yeah, thanks Paul. That was, I think, three questions, which is about the limit of what I can remember all at one time, but I'll take a stab at the first two. The first was, does firefly currently connect to a single blockchain? As a Firefly 1.0, what I was demonstrating was all of the messaging and orchestration, primarily messaging does happen on a blockchain. But like you said, that could be, it is pluggable, so it could be fabric, it could be Ethereum and that Ethereum could be Go Ethereum, it could be basu, it is pluggable. You could use additional chains through the token connectors today. So that's kind of the state of Firefly 1.0 today. There is a lot of work going on actively in the code base right now in the Firefly community to allow connections to multiple chains for various, for different purposes, including public chains as well. Peter, I don't know if you want to add on anything to that. And also, I don't know if you want to take a stab at the third question there, which was about zero-knowledge proofs. Yeah, great questions, Paul. So as Nico said, there's actually been a lot of development that's been going on in the next release branch of Firefly, and there are three current active streams. One is updating the support for all of those variety of different chains, the architecture to support them with a new set of components, a transaction manager, which is able to deal with all of those complexities of gas investments with a policy-driven approach to really help it scale to the variety of different public chains out there and a connective framework. That's thread number one. I'm really personally involved in that one. Then, second thread that's happening is, as Nico said, the ability to have multiple blockchains connected to one Firefly, that's in-flight at the moment. And also, to be able to have two modes to run Firefly in. And one Firefly can actually work in both of these modes in different namespaces. A mode where all of the members of the business network are using Firefly, and they're using those high-level features of Firefly to connect. And a mode where it's my gateway as an organization to blockchains, and those blockchains, there are all kinds of users on there who are not using Firefly. So that switch between sort of gateway mode and multi-party mode is going in at the moment. And there's a third stream as well around some advanced API security features being added in, and all of those are active and running at the moment. So these do come along to their monthly community calls to get engaged with those threads directly and reach out on Discord for some more information. On the zero knowledge proofs, that's probably one to take offline. There's a force to share with you there. Very much a plug point for Firefly that the tokens connector in particular is a great place to plug that in. Jim, who's on the line, and I have had lots of conversations about the projects that could plug in there. There was not one on the shelf in the open source community that you can use as a plug point today, but there's been a lot of thinking and a lot of experimentation in that space. Thanks so much. Hi, everyone. Let me turn on my video also. So the question is regarding the blockchain journey like I'm from Java background originally working in cloud computing lately, like total 14 years. So I'm learning solidity now and I explore hyperlogy of fabric and other things, so truth a bit, primarily solidity. So now Firefly looks interesting, but what's the right way to consume this because I'm trying to build a practice on blockchain. And there are so many different things here and there. So what do you suggest? It's just a new bike and a question. Sorry about that. It's a great question. I wonder, Nico, did you want to take the first stab at this one? Sure. Yeah. So, you know, Firefly is a, like we talked about earlier, the developer experience is the goal is to make it really easy to get started with it. So there's a lot that you can do just out of the box. It's very easy to install the Firefly CLI. It's very easy to set up the very same thing that I just demoed here today. And so we've seen a lot of people in the community coming to blockchain, they're new to blockchain or they're new to Web3. And the Firefly is sort of, we talk about it being a Web3 gateway as a component in an architectural stack. But in a lot of ways, it's a developer's gateway into their first experience with building a Web3 app as well. So Firefly is not a blockchain. It's not a distributed ledger technology. But it provides a layer on top of the DLT. It provides a layer on top of distributed storage and a bunch of other pretty complicated topics that present a very easy to use API. And so hopefully you're able to see that from the demo. But yeah, it is a great place to come to learn to just try, like, hey, I want to learn about ERC 20 or I want to learn about ERC 1155. And there's very easy ways to just play with those technologies right on your laptop with Firefly and the Firefly CLI. Just to add one thing, I would encourage everybody who's looking to get into blockchain. There isn't a bad place to start. One particularly good place to start is to try out tokens. They're just such a ubiquitous, like, it's so core to sort of a value that you can get from blockchain. It's so hard to build anything else. And you can really learn about what blockchain can do with them. And because they're so well adopted, there's great standards out there. And a project like Firefly has prebuilt connectors for a whole bunch of standards, ERC 20, ERC 721, ERC 1155. So you don't have to start in Solidity. You can start by trying out what the contract does out of the box and then you can try extending the Solidity a little bit. You don't have to start from scratch. So that's a really good tip for anybody who's looking to get into blockchain for the first time. Yeah, thanks. Thank you both. And one related question is like I was recently developing a D app and which talks to Salesforce.com. Salesforce.com is a cloud computing fast platform. So I was trying to use EtherJS to connect it via JavaScript. But with the Firefly, I see there's a way to expose APIs, which maybe can be consumed with a backend system, like which is not dependent on metamask. So is that the right direction to think about like a Firefly use case? Like, it's not just web, maybe beyond that and for backend servers also. Music to our ears. I come from an integration background. So you're speaking my language and being able to sort of point none blockchain technologies at something that looks the way that they understand the world, predictable APIs, predictable events. You know, maybe you've got an enterprise service bus, and it's like you need something you can connect that to. Firefly speaks that language on one side, and it speaks blockchain on the on the other. So you should find it's a really great toolkit to build something like a Salesforce connector. Thank you. And last question is how is it to go live on production with Firefly. I saw the sample notes via CLI. Do you have already made paths and templates to go live? Yes, so there are partners in the Firefly ecosystem and you know, hands up I have to work for one of them which are providing production ready solutions off the shelf. Also, in the community, there are as well as the CLI which gets you like a live running environment on your laptop or on a shared VM. Also, a whole set of Kubernetes helm templates, which are a deployment templating system on top of Kubernetes with a load of documentation. So if you're if you're looking to build, you know, deployment yourself and you've got a DevOps specialist around then the stuff speaking their language of Kubernetes and the helm that they can they can go to to get started. Thank you. Thanks a lot. Okay, we probably have time for one more question if there's any out there. Yeah, one question from me. So we saw that you know we could convert you know solidity smart contract API into you know your API is right then it was a beautiful way to do it and you know it actually saves everyone a lot of time. So is the similar thing available for fabric smart contracts maybe for both. I wonder if Jim's on maybe Jim wanted to chime in here and talk about what we've done for fabric. Yeah, absolutely. This is Jim, one of the maintainers on far for as well. Yeah, so with different blockchain technologies you have different language choices for building your smart contract solidity specifically is for the EVM based ecosystems, Ethereum, and many derivatives of Ethereum. If you want to use go lang, you can try out hyperledger fabric instead, which far fly also supports. In fact, you can use Nico's CLI to provision a full fabric network and build far fly components on top of it, just on your laptop, just need to provide the fabric as the blockchain provider. And there you can, you can use go lang no jazz or even Java to build your smart contracts. And just to add to what Jim said, because fabric doesn't have a definition format for what inputs look like to a smart contract function. So you do craft sort of far flies adding that value to fabric directly there isn't one underneath it fabric just it, it's bytes is is the input for an individual function, but you can use it to say, actually my go smart contract, a JSON payload for the first parameter with these parameters, and it's not a lot of work to craft that from scratch. So you can, as a developer of a smart contract in fabric, you can now advertise that to others with the West API with a little bit of work, you know to define the interface, and then everybody else can consume your smart contract without learning fabric. So thanks. So it would help you know if there is a link where you know probably, you know, a past presentation that you guys might have done. So you know that would help you know to look at that, or probably you know we can organize a new one, a new session. Yeah, I think that's a great suggestion for a community session just running through a fabric sample and to end. I know, I know, Jim, you've been updating the docs recently for that. Yeah, yeah, absolutely. The steps that Peter was talking about to teach a fabric to teach far fly about the fabric contract, the documentation is is being reviewed and should appear in the next couple days. Thanks for what it's worth fabric by virtue of at least potentially communicating with chain code via g rpc could potentially take advantage of g rpcs server reflection service or server reflection. API APIs, which support dynamic querying and invocation of g rpc functions rpc calls or streaming by by reflection at runtime. That's a great point, Paul. Jim and I were talking about providing protobuf definitions in addition to Jason. If you can invoke a, you know, protocee on the fly, you know, also at runtime that might also work if if you can dynamically link the results. I think you can do that in some languages, but not others. That would be the concern that I would have about that approach. I would look at server reflection closely. But of course that that then is up to the chain code developer. That's not something that fabric can enforce or firefly can enforce. Yeah, definitely. I think that's that's an option we'd like to provide so that you can use the the Jason payload but underneath it can be buys that are comparable to a protobuf definition. That's definitely something we'd like to add in the future. Thanks. As you can, as you can imagine, I've been looking at all this fairly closely. It's great to have you in the community, Paul and and everybody on the call. I know we probably run out of time for questions here, but do jump on the discord engage with us get involved. A friendly bunch that there's lots of people there keen to help and chat through what you're trying to achieve and help there. Absolutely thanks again everybody for the great discussion and presentation. Awesome yeah thanks thanks everyone thank you to Vikram and hyper ledger India for hosting this event and thank you to all our panelists it was great hearing your insights. It was great the time to join today so like Peter said we look forward to seeing you in the community here. So have a good, you know, rest of your morning or afternoon or you know wherever you are times on wise. Thanks. Thanks again. Thanks everyone. Thank you everyone. Very good day. Good night to you in the US. Thank you. Thank you.