 Hello, my name is Neil Peterson. I'm a program manager working with the Azure Resource Manager tools extension for VS Code. Let's take a look at what this extension can do for us when creating Azure Resource Manager templates. What we can see here is that I'm inside of VS Code and I've got a file open named azuredeploy.json. Also notice that VS Code currently recognizes this as a JSON file. That's important and we're going to see why in just a moment. So the first thing I want to do is scaffold out my template or just kind of build the bones for this template and we make that easy to do with snippets. What I've done is I've just typed in ARM and I've got a couple options. I can create the template with the deployment scope of a resource group, management group, subscription or tenant. In this case, I'm just going to select resource group. Also notice that VS Code has changed from recognizing this file as a JSON file to an Azure Resource Manager template file. We've created a language server specific to ARM templating language that recognizes this file as an ARM template and it's going to allow us to do things like autocompletion and validation specific to ARM templates. So the next thing I want to do is add a resource here. And once again, we make this easy to do using snippets. So I'm going to put my cursor in here and add a carriage return and let's just add a Cosmos database account. So I'm just going to start typing in Cosmos and hit enter. And we can see that we've added the templating language needed to deploy an Azure Cosmos database account. Now I can hit tab and tab through the things that need to be configured here, but I'm just going to keep all the defaults. Instead, let's go ahead and add some variables and parameters to make this thing a little more generalized. I'm going to drop into the parameter section and once again use snippets to create a parameter. And then I'll create a variable. And for the value here, I'm going to use the resource group function and we'll see a little bit of autocompletion here as well. Now that we've got the parameters and variables, let's go ahead and drop those into the resource that we're creating. So I'm going to remove the name here and start an expression and I'll type in P and select parameters and add a single quote. And you can see that we've now got a list of all the parameters defined in this template, which in this case is just one, but I'll go ahead and select that. And then I'll do the same thing for location here with the variable. Cool. And we can see a couple of things happening now. We've got color coding on a couple of different things. So we can see that parameters are in green, variables are in blue, and our functions are in yellow. As well, also note that we support comments. So we've seen how to scaffold out a template using snippets, add a resource using snippets. We've seen some of the autocompletion. Now let's look at how the extension is validating the structure of our resources against Azure. So we've got a database account here. I'm gonna go down to this section right here, consistency policy. If I hover over consistency policy, you can see we've got a little bit of information about what this is. More exciting though, I'm gonna remove this line right here, default consistency level. So I'll just delete that. Now notice that I've got yellow squiggles under consistency policy. If I hover over that, it's gonna basically tell us that, hey, this resource is missing a required property, which is default consistency level. What's going on here is that the VS Code extension is validating the structure of these resources against schemas that have been created from Azure. So with this extension, we've got information that we need to craft these resources in the correct way. Not only do we validate against these schemas, but they also provide autocompletion. So we'll see here that if I put in a double quote, it offers up default consistency level. I'll go ahead and select that, add a colon, and then we can see the potential values for that property, and I'll select eventual. Finally, let's take a look at navigating through an Azure Resource Manager template using the ARM Tools extension. You can see here that we've got an ARM template outline. I can expand resources, and we can see that I've got one resource in here, which is that Cosmos database account. Now let me give that an easier to read name. So I'm just gonna drop into tags and give it a display name. Cool. And now over here into resources, we can see that the name has changed to Cosmos DB. Now let me go ahead and add another resource in here. So I'll just put in a comma, let's add in a storage account. And over in the ARM template outline, we can see that I can now navigate between these two resources. So that was just a quick look at the Azure Resource Manager Tools extension for VS Code. For more information, feel free to navigate to aka.msarm-tools. And this is the extension landing page in the Visual Studio Marketplace. As well on this page, we've got a link to the GitHub repository. At the GitHub repository, feel free to create any issues that you may run into, ask questions, and as well, you can feel free to reach out to me directly on Twitter. I hope this has been helpful. Thanks a lot for watching.