 In this demo, I'm going to introduce you to OpenShift Do, or ODO, which is a command line tool for developers who are writing, building, and deploying applications on OpenShift. I'm already logged into OpenShift in my terminal, so let's get started. First, I need to create a project for the demo. I'll type ODO project create, and we'll call our project ODO demo. Great. Now we have our project and it's active. Next, we'll create an application. The application that we're going to deploy for this demo is a Wild West style shooter game. I'll run ODO app create Wild West. That'll be the name for our application. Now it's created. From this point on, any of the work that we do in ODO will be in the context of this application called Wild West. The Wild West game has two components. There's a back-end component that's a Java-based Spring Boot app. The back-end will talk to the Kubernetes API and get a list of Kubernetes components that are running on our OpenShift server. The front-end is a Node.js app that will talk to the back-end and display those Kubernetes components in the game so that the user can shoot at them. First, we'll create the back-end. We'll grab the repo URL for our back-end, and we will do getClone, paste that in. Okay. Let's go into, now we need to compile this code. We'll run maven clean package to compile our code. As soon as that's finished, we will then create a component for our back-end and our application. Before we create the component for our application, let's type odocatalog list components. This is going to give us a list of all of the component types or runtimes that are available to us. Here, you can see Java, and that's the one that we're going to use for our app. I'm going to type odocreat. We'll give the component type of Java. We need to give a name for our component. We'll use back-end. Then, since in this case, we're going to be deploying the binary artifact, our jar file, we pass the binary flag and the location, which I happen to know is in target slash Wild West 1.0.jar. Now, we're creating this back-end component. It'll just take a second to get that up and running. We could look at our logs here. It's already completed. That's great. Now, we've created this component, we need to push our code. To do that, we simply type odopush. Since odo knows we're in the context of our back-end component, it knows exactly what we want to do. You can look at the logs again, and you can see it's getting everything up and running. These logs are also something that you could look at in the OpenShift web console, if you would prefer to look at them there. When we go to the front-end, we'll look at the logs in the web console. You can see here now it's started. Let's cancel out of there and we'll clear. Okay. Now we have our back-end deployed. We need to work on the front-end next. Go back up to our top-level directory. We will grab the URL for the front-end repo, which we have here. Copy that, come back over, get clone. Now it's cloning our front-end repo. Now we need to create our front-end component. Our front-end is a Node.js app. We won't be deploying any binary artifacts this time. Instead, we want odo to push our local source code up so that it can be built and deployed. Let's again run odocatalog, list components, just to confirm that yes, Node.js is one of the options here. We need to go into that front-end directory. So we'll cd into wild, west, front-end. Now we can run odo, create Node.js, call it front-end. Then we don't need to pass any additional arguments because we're not doing a binary build this time. As we did before, odolog-f, it's scaling up that pod right now, which is great. There we go. We can do odo push. Now this time, instead of looking at the logs over here, let's look at the logs in the web console. Okay, here we go. It's running. Get a bunch of logging information here too. All right, so now we are ready for the next step. Which will be to link our front-end and back-end components. This is so that the front-end can communicate with the back-end. Odio has a great tool for this. It is odolink. And since we're in the context of our front-end, we can simply say odolink back-end and that will link our front-end to the back-end. The final step we need to take is to create a route or a URL to our application so that we can connect to the front-end in the browser. To do that, we type odiorl create. You can see the URL that was created right here. What we are going to do is come back to the web console, to our overview, and you can see here is the URL as well. So I will click that, and here we go. So this is our app. Kind of has a welcome screen here. And then momentarily you'll start seeing some of these Kubernetes components showing up on the screen so that we can shoot at them. Here we have a pod, which we can shoot. So next, let's look at the iterative development capabilities of odio. You can see here, we have a title for our application. It says, Wild West, shoot them up. Let's change this Wild West part to something else. So before we make the changes, let me take you back to the terminal and show you the odio watch command. When I run odio watch, this is going to tell odio that I want it to listen for changes in my local source directory. So watch is running. We will switch over to Visual Studio Code, have the file up here. So where I have Wild West in this H1 tag, let's change that to my odio demo. My odio demo, we will save this. If I take you back over here to the terminal, you can see watch is doing some work here. And then if we come back to the browser and reload, there you go. There is our changes. And we can continue doing that. Watch will continue listening for changes if we wanted to make another change. Save that file. Come back to the browser, reload again. There it is, my odio demo one. So we've only touched on some of the features of odio in this demo. If you want to learn more, you can visit github.com slash redhat-developer slash odio. Thank you.