<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Fiqri Ismail</title>
    <description>The latest articles on DEV Community by Fiqri Ismail (@fiqriismail).</description>
    <link>https://dev.to/fiqriismail</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1141781%2Fc7f15e7f-a789-4716-b469-9b143cfdde8a.jpg</url>
      <title>DEV Community: Fiqri Ismail</title>
      <link>https://dev.to/fiqriismail</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/fiqriismail"/>
    <language>en</language>
    <item>
      <title>The quickest way of deploying a Blazor Web Assembly app to AWS Amplify</title>
      <dc:creator>Fiqri Ismail</dc:creator>
      <pubDate>Tue, 30 Jan 2024 15:19:54 +0000</pubDate>
      <link>https://dev.to/aws-builders/the-quickest-way-of-deploying-a-blazor-web-assembly-app-to-aws-amplify-1np6</link>
      <guid>https://dev.to/aws-builders/the-quickest-way-of-deploying-a-blazor-web-assembly-app-to-aws-amplify-1np6</guid>
      <description>&lt;p&gt;&lt;a href="https://blazor.net" rel="noopener noreferrer"&gt;Microsoft Blazor&lt;/a&gt; is a web frontend framework built on top of dotNET. It's total solution to build fullstack web applications using C#. You don't need a single line of JavaScript to build a total solution using Blazor. &lt;/p&gt;

&lt;p&gt;In this tutorial I will be going through step by step on how to create a Blazor Web Assembly project using &lt;a href="https://visualstudio.microsoft.com/" rel="noopener noreferrer"&gt;Visual Studio 2022&lt;/a&gt; with &lt;a href="https://dotnet.microsoft.com/en-us/" rel="noopener noreferrer"&gt;dotNET 8&lt;/a&gt; and finally deploy to &lt;a href="https://aws.amazon.com/amplify/" rel="noopener noreferrer"&gt;AWS Amplify&lt;/a&gt; as a frontend. &lt;/p&gt;

&lt;h2&gt;
  
  
  Getting things ready
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://aws.amazon.com/free/?all-free-tier.sort-by=item.additionalFields.SortRank&amp;amp;all-free-tier.sort-order=asc&amp;amp;awsf.Free%20Tier%20Types=*all&amp;amp;awsf.Free%20Tier%20Categories=*all" rel="noopener noreferrer"&gt;You need an AWS account&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://visualstudio.microsoft.com/" rel="noopener noreferrer"&gt;Visual Studio 2022 installed with latest updates&lt;/a&gt; (Community Edition, all that you need)&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Creating the Blazor App
&lt;/h2&gt;

&lt;p&gt;First you need to create a Blazor Web Assembly Standalone App. Here we go with the steps. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Launch Visual Studio 2022 and select &lt;strong&gt;Create a new project&lt;/strong&gt; from the dialog box.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fml4k5y2yr1grxi7rrrex.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fml4k5y2yr1grxi7rrrex.png" alt="VS 2022 New Project"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now from the list select &lt;strong&gt;Blazor Web Assembly Standalone App" from the list and click **Next&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe5l3odsfqfyigpa30pzj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe5l3odsfqfyigpa30pzj.png" alt="VS 2022 Project Type"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now give it a project name (ex: BlazorWasmAmplified) and select a folder to save and then click &lt;strong&gt;Next&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frji8yccvijqof5g4p7pl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frji8yccvijqof5g4p7pl.png" alt="VS 2022 Project Name"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;.NET 8.0 (Long Term Support)&lt;/strong&gt; as the framework from the drop down. Leave the defaults and click &lt;strong&gt;Create&lt;/strong&gt;. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa3vy5pmyjf6ulugf4rkr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa3vy5pmyjf6ulugf4rkr.png" alt="VS 2022 dotNet 8"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now you should have a Blazor Project. Press &lt;strong&gt;F5&lt;/strong&gt; to execute the application. If you see this screen. You have a working Blazor App.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg5f4ifbw4hvryjykq1j0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg5f4ifbw4hvryjykq1j0.png" alt="Edge Browser Blazor App Running"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating a frontend app in AWS Amplify
&lt;/h2&gt;

&lt;p&gt;For this we will be using the Amplify Studio. Follow these steps to  create the Amplify App. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Login the AWS Console.&lt;/li&gt;
&lt;li&gt;Select your region. &lt;/li&gt;
&lt;li&gt;Under Services Select &lt;strong&gt;AWS Amplify&lt;/strong&gt;. You should see the getting started screen.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbo5frbuab67u4dmkwi8f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbo5frbuab67u4dmkwi8f.png" alt="AWS Console Amplify"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scroll down and under &lt;strong&gt;Getting Started&lt;/strong&gt; section click the &lt;strong&gt;Get Started&lt;/strong&gt; button under &lt;strong&gt;Amplify Studio&lt;/strong&gt;. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk565zuf4i01tm22h2tu2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk565zuf4i01tm22h2tu2.png" alt="AWS Amplify Studio"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now give an application name (ex: BlazorAmplified ) and click &lt;strong&gt;Confirm deployment&lt;/strong&gt;. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgdud968nrxli7paoo82h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgdud968nrxli7paoo82h.png" alt="AWS Amplify Studio"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This will take a few minutes until the frontend is provisioned. After that you will be presented with a screen with two tabs. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Hosting environments (which will be your frontend deployed)&lt;/li&gt;
&lt;li&gt;Backend environments (for your backend) &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyc6cmilfpen60a5tifpd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyc6cmilfpen60a5tifpd.png" alt="Envoirnments Screen"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Publish and Deploy
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Open the terminal and go inside the project root folder. You must be inside where the &lt;strong&gt;csproj&lt;/strong&gt; file is available.&lt;/li&gt;
&lt;li&gt;Now type the following command to compile the release. &lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

dotnet publish -c Release -o release


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;This will create a release of your Blazor application. Now type the following command to open the File Explorer in the current folder. &lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

explorer.exe .


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;Now double click on the &lt;strong&gt;release&lt;/strong&gt; folder and then &lt;strong&gt;wwwroot&lt;/strong&gt; folder. &lt;/li&gt;
&lt;li&gt;Select all files and click right mouse button and select &lt;strong&gt;Compress to ZIP file&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr7u56iky0dbah73it2j5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr7u56iky0dbah73it2j5.png" alt="Windows Explorer Zip File"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give a proper name to your zip file (ex: blazorapp). &lt;/li&gt;
&lt;li&gt;Now go back to AWS Amplify Studio. And click on the &lt;strong&gt;Hosting environments&lt;/strong&gt; and select &lt;strong&gt;Deploy without Git provider&lt;/strong&gt;. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4e1aw8k7tuaa1cyqn22d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4e1aw8k7tuaa1cyqn22d.png" alt="AWS Amplify Deploy"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click &lt;strong&gt;Connect branch&lt;/strong&gt; button.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Drag drop&lt;/strong&gt; in the screen and type a name for your environment (ex: staging). &lt;/li&gt;
&lt;li&gt;Now drag and drop the zip file you created.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Save and deploy&lt;/strong&gt; button.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3myb08vaxhndkqmlhmgy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3myb08vaxhndkqmlhmgy.png" alt="AWS Amplify Deploy"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After a successful deployment, you should see this screen with a link to click for your frontend. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqc6dz4qbhnxzryz2pnb3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqc6dz4qbhnxzryz2pnb3.png" alt="AWS Amplify Deployment Done"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Finally under &lt;strong&gt;Domain&lt;/strong&gt; click the link to see the Blazor App up and running. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foxe2bk1rk1bh82ryxeym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foxe2bk1rk1bh82ryxeym.png" alt="Edge Running App"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You are done and Happy Coding 🙌🍸&lt;/p&gt;

</description>
      <category>blazor</category>
      <category>dotnet8</category>
      <category>awsamplify</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
