Azure Static Web Apps with React and Visual Studio Code
Tags: azure, react, visualstudiocode, staticwebapps
Published: 2023-02-11 17:23:05

Hey everyone, in today's post we are talking about how deploy an React Application to Azure Static Web App using Visual Studio Code.

To understand what is Azure Static Web App, visit [Azure Static Web Apps - The Big Picture](https://dev.to/reniciuspagotto/azure-static-web-apps-the-big-picture-1e16)

## Prerequisites
- [NPM](https://nodejs.org/en/download)
- [Visual Studio Code](https://code.visualstudio.com/)
- [Azure Static Web App extension](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azurestaticwebapps) for Visual Studio Code
- [Git](https://git-scm.com)

## Installing React Framework
Once all the prerequisites are installed on your machine, the next step is to install React, for that run the command below.

`npm install -g create-react-app`

## Creating a ReactJS project
Now that you have React installed, you can create a new react project directory by running the command below

`npx create-react-app <project-name>`

After creating the project, let's open it in Visual Studio Code. You can open the project using the interface or by typing the command below in your command line tool.

code .

**Important:** Always access the project root before opening in Visual Studio Code or you can open VS Code first and then open the project root. Always avoid opening the folder of the project you created in the previous folder, as this can lead to errors in the build and consequently in the pipeline.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y9o1tnumupaleast950y.png)

The next step is the deployment, so Press F1 and search for Azure Static Web App: Create Static Web Apps and select.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s2dsvq957tmxipobpi87.png)

In the next step, we need to select the Azure Subscription, but if you are not logged into your Azure account with Visual Studio Code, an option to make the connection will be displayed.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6xmkgijw66i5a4q34dm0.png)

In the next option, we need to define the name to be given to the service in Azure.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f7uolctuhwkeb3yhymlk.png)

In the next step, it's time to define a name for the GitHub repository

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1ymj07blwunp4uhhen17.png)

The next step is to define the region where the resource will be created.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rw5vf2pkea3i63mt5sih.png)

Now it's time to define the project type. Note that Azure Static Web Apps supports multiple frameworks and since our project is a React project, we should select the React option.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e5evrkx7xb1u79zm0vcw.png)

Here we need to set the path to the root of the React project. By doing this, the executor responsible for deploying the code will be able to run the _npm run build_ command to generate the outputs in the build directory. Let's set / to this option.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6wsqz36n876n9mw1pf7s.png)

In the last step, we need to define the application build output path and for React projects we need to inform the _build folder_ that it's generate by build command.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eg1p83akh9vbufh6j7fk.png)

Finally, press enter to start creating the resource on Azure and creating the repository on GitHub.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d44pt21b38rheefl8zwz.png)

Once the run is complete, we have an instance of Azure Static Web Apps provisioned in Azure and ready to use, and the repository on GitHub with our code. At the end, the code deployment pipeline will be executed automatically by GitHub Actions.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kf4j4hg71963hgjkx6vu.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f4braghyqls8vq7lj90k.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kwt7j4urtqfie0qpza1m.png)

Now, let's open the Azure Portal to get the link of our the Web Site in Azure Static Web App resource.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oipcgb4742rmiz7fav3w.png)

With the link copied, paste it into your browser to see the result or you can simply click on the link to be redirected automatically.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cq6h4t4yp2mpc1fz4rh3.png)

## Conclusion
Azure Static Web Apps is a powerful feature that makes it easy and fast to build and deliver a modern front-end project.

Did you like this post? Want to talk a little more about it? Leave a comment with your questions and ideas or get in touch through [LinkedIn](https://www.linkedin.com/in/renicius-pagotto).