Hello everyone, and we are really excited to have you for for this course, which is learning aetherium development by examples. If if you, you know, have, you might have observed, or you might have faced this challenge that when you are trying to learn any new technology you are you need to sometimes put a lot of efforts in setting up the environment, right. So, the core objective of yours is to understand that technology but in order for that to work, in order for you to understand that technology, you need to do a lot of other activities which are not really that much relevant to understanding the technology, but you know, still you need to do it because otherwise you won't be able to do the development like for example, you need to set set up the whole environment, installed a lot of different setups and you know, have a lot of different configurations and whatnot.
And all these efforts are non productive, in that, you know, you don't learn much of the things while doing it, learn much of the things around the technology you want to learn. Okay? So the other objective of this course is to provide you out of the box environment, okay, out of the box environment wherein everything is set up for you, and you focus on the core thing, which is understanding the stadium development, how you are going to do the development for a stadium. Okay, so that's the other thing, which is the core of this course. And to achieve this, we are going to have that out of the box environment with demos, okay, demos around it. aterial.
Okay, so this is, this is what this course is all about. So let's get into each and everything. So I just gave you the overview of the course. So the next thing is out of the box environment. So what are the things which comes with this one? Okay, so the environment we are going to have is a virtual machine, that virtual machine you can, you can have it up and running in minutes.
And that virtual machine is available on a zoo and Google Cloud at this moment. And you know, down the line, it may be available to other cloud providers like AWS, and so on. Okay, so So the advantage here is you don't need to set up the entire environment, you just go to a zoo or Google Cloud, get your machine up and running and then you know, start having the development start having understanding that aetherium development. So what what does this out of the box environment provides you? So the first thing you will get is to facilitate your framework. So truffle is basically a JavaScript based framework.
Which provides you a high level abstraction off aetherium develop aetherium for the development purpose, so it comes with all the, you know, libraries loaded with you to interact with the Ethereum contracts and whatnot. So, this is JavaScript based. So the prerequisite here is you should have some basic understanding around JavaScript. And again, if you if you are not that much aware, still it is okay because you know, most of the things we are going to learn it through demos. The second thing they normally will provide you is ganache ganache is provided from truffle itself and this is a user interface for interacting with the blockchain. So when you are going to do the Ethereum development, you are going to deploy your contracts on the blockchain right.
So deploying on the production blockchain is not practical for learning purpose because that involves, first of all the cost. Okay? You know, you need to spend the gas and, you know, gas comes through aetherium. So there is a cost involved. And the other thing is, you know, you're kind of learn the Itanium developer and you're in that process, you know, you don't want to just jump and deploy everything on the production, right? So glasha it provides you so the other option is you can set up your tests, you can deploy your application on the test nets.
Aetherium provide two different different test nets. But again, you know, setting up those tests net is, is not that straightforward. Okay. So what ganache provides you is a local test net Ethereum blockchain test net wherein you can deploy the applications and and then have it up and running. The third thing they normally even provide you is a Visual Studio code, which is the ID integrated development environment for the local purpose and also for the giving the demos or you know, going through the demos. So, this is the integrated development environment you will get along with the solidity plugin.
So the Ethereum development happens in the language called solidity. solidity is the programming language for aetherium. So visual code has that the environment has reagent code with the solidity plugin installed on it, so that it can understand the solidity related files. The next thing we are having is the implementation of aetherium which is also called get so this is a strong for for you. The next thing You have his meta mask meta mask is going to provide you a plugin. So, this meta mask plugin can be installed on Firefox or Chrome browser in this development kit, the virtual machine you have meta mask for Firefox.
So, this meta mask gives you that interface through which your web based application which are running in browsers can interact with a blockchain okay. So, again, you know, when we get into the demos, you will see the meta mask in action. And then you have Corum private blockchain. So aetherium is basically a public blockchain wherein your transactions are publicly available for everyone to view right. In certain cases this this might not be it is desirable, okay. We want our transactions to be private, between are among the nodes.
Which are involved in the transaction, for example, okay? So it's a VM for example, if I transfer X amount from my account to your account, that transaction can be viewed by anybody over the Internet to provide, you know, security and you know, a layer of security on top of aetherium. This cool arm with which is a fork of aetherium and developed by JP Morgan provides you all the security features and you know, make your transaction private. So, this environment comes with along with the ganache Test, test blockchain test net, it also comes with code from private blockchain wherein we can deploy our application and have them have the transaction per hour private between the nodes. So, this is Is the out of the box development environment you will get okay. And here I have it up and running you can see okay.
So this is the virtual machine you you will be provisioning on a zoo and in this machine when you log in, you will have this aetherium folder. Okay so this aetherium folder has all the demos for you then you will see the Visual Studio so Visual Studio code will be used for for opening and working and doing the development and then here you will see ganache which is your test net and you have Firefox with the meta mask plugin. Okay, so let's go one by one. So I can open a terminal over here and here you if you type truffle. So you will see that truffle will come on and it will give you What are the different option truffle truffle can provide you okay? By the way, if you want to get details about everything we have in this out of the box development environment, you can go to a zoo marketplace and in a zoom marketplace which is a zoom marketplace.microsoft.com you can just search for tech latest.
And here you will see terrarium development kit you click on this and you will see more details about the out of the box environment over here. So truffle ganache, Visual Studio, everything we just discussed you will have more details with the links and everything. Okay. So in the virtual machine, truffle here, you type in you will get all the command line options. So this is truffle for you Okay, so the next thing we have over here is Visual Studio. Right?
So for example, I can open the code. So I will go to dekstop, area demos. And in demos you will have the Hello World equivalent of aetherium. Okay, so the command for opening code, opening Visual Studio code is code. And if you just say current directory, it will open that code, which whatever is there in hello world in Visual Studio. Okay.
So currently, if you see our hello world demo, you have all this file. So yes, so you can see everything in the Visual Studio and then you can play around with the code. So this is the welcome screen, I will close it and then I will go to the Explorer. So you We'll see hello world demo because I opened it from the Hello World directory, and you will see the files. Okay, so all the contracts are here, all the migration scripts are here. And don't worry with all this jargon if you're not that much familiar at this point, okay, we'll get into detail about this.
All right. So this this is the, the Visual Studio code. The third thing I want to show is the third thing in our list is we sorry, the next thing in our list is gonna test net. So this is also available on the desktop itself. Okay, so here you will go. You click on this executable, and this will open the user interface for our test aetherium based blockchain Okay, so here you I'm gonna and you can see you know, you can see various accounts.
You can see how many blocks are mined. Currently zero blocks are mined by the ganache gives you out of the box, account for testing purpose. And here you will see this account is already having hundred ether. But don't get too excited. These are not the actual ethers with the values. Okay, these are just for the testing purpose.
They don't have any value outside of this test RPC. Okay. And this test RPC blockchain is running on your localhost 7545 Okay. There are no blocks mine at this point. There are no transactions, there is no transaction logs, but when we are going to work on the example. This is where we are going to deploy our deploy our examples and here you will see once they are deployed, you will see blocks being mined transaction whatever happened on the blockchain will be visible over here and a lot of other information once we get into the particular section where we are doing deployment on ganache okay.
So so far we have seen truffle Visual Studio ganache. The next thing we need to we need to see is going area okay which is get again forget we are not going to directly interact with gate. Okay, in our example gate is required for quorum. Okay, so to work on the current demos we are going to, we need get, but you know, regardless of that, if you want to know more detail, details about gifts, you can go to the command line. Okay, and on the command line if you try if you don't ask for gifts you Get details about you know how to run to get okay. So that's the next thing and then you have meta mask.
Meta mask is the plugin. So if we go to if you go to the dekstop again you will see Chrome browser and in this Chrome browser you will have meta mask as a plugin installed for you already. Okay, if you want to know more details about what meta mask is, you can go to their page which is mentioned in our zoom marketplace offering Okay, so in this Firefox, here, you will have this option the plugin okay so this plugin then is going to be configured to connect to our can ash log blockchain and then we'll be deploying application and interacting. The user interface will interact with the blockchain via meta mask. quorum. quorum is installed on that text up again, if you go to the dekstop.
Amy stadium folder. We have demos. Within demos, there is a demo for Purim. And here you have a folder called Cora. So this is where Cora, which is a private blockchain. for coffee theory, I'm using strong so entire setup of quorum is available over here.
So, in this sort of the box development environment, you have everything on top of which you can then run your demos. Okay, so at this point, we have a HelloWorld aetherium demo, okay. So this will give you idea about what aetherium is, how the contracts are developed, what are the things which goes in contracts, how that develop contracts are deployed through the truffle framework, because truffle provides you the all the means and mechanism. And it does all the heavy lifting of deploying your contracts. So this will be sort of a HelloWorld demo to aetherium. Through this demo, you will understand the basic concept.
Then we are going to have our first dap daps. So this pet shop will be your first distributed application. And this spit shop basically, is a complete distributed app with a user interface wherein you can you can adopt various pets, and that transaction of adopting a pet will happen on Ethereum blockchain. And the third demo is building a tab for private blockchain based on quorum. For this demo, also, we already have everything configured. Okay, so on the dekstop you have a tyrian folder, and in it, we go to next stop.
So on deck stop, you go to aetherium demos. And along the demos, we also have the solution for the demos. So in the demos, hello world is over here. petshop is here in quorum and samples are here. I'll just quickly show you how that Pet Shop user interface looks like. So on the command line, let's go to the command line.
I mean that Pet Shop src folder, I'll just say NPM run So, this will launch light server and which is an inbuilt server, it will web server and you will have that user interface up and running over here, okay. And here you know, in this example, you will, you won't, you are not going to develop the entire user interface it comes comes with the example what we will be developing is a contract through which pets can be adopted and then a local blockchain will be running in Ganesh and when you click on a doc, the transaction will be invoked via meta mask meta mask will help you interact with the blockchain. It will get configured to the test account which ganache provided with the hundred test aetherium and through that we will be able to adopt pet So, this is the pet example just to give you an idea, you know, what you will be working on.
Okay. So, so for that set for the overview of the course the objectives of the courses to help you understand aetherium development by using examples and providing you out of the box environment so that you focus on the understanding the stadium development and we take care of all the infrastructure requirement required to have those examples up and running. So, hope, hope you will, you will like the course and we'll see you in the coming sessions.