Category

Prototyping

POC Deployment.

Prototyping

Introduction

Now that I had completed the final proof of concept, the next step was to deploy it using Amazon Web Services (AWS), which was one of the requirements of the project. This was important because it would allow the tool to be accessed and used without the need for a local deployment. Deploying on AWS makes sure that the application is scalable and could handle multiple users.

Abstract

AWS provides a useful service called Amplify. Amplify is a services that makes the deployment of web applications simpler by automating many of the tasks that would otherwise need to be done manually. I started with the frontend which turned out to be relatively easy. My frontend code was stored on GitLab, and normally, I would be able to just link this GitLab repository to Amplify and Amplify would take care of the rest. However GitLab in our organization (iO) is accessible only internally which meant I couldn't directly link it to Amplify. Instead I had to build the React application using the command "npm run build". This command generated a dist folder containing the optimized and production ready code. Once the build was complete all I had to do was upload this dist folder to Amplify and the frontend of my application was live.

Code

The backend part of the deployment was a bit more tricky. The backend is an API that needed to be callable. For this I used AWS Lambda which is a compute service that runs code in response to events and automatically manages the compute resources. I created a new Lambda function and uploaded an "artifact" of my backend application. AWS Lambda took care of running the code whenever it was needed. This made sure that the backend was responsive and could scale without requiring me to manage servers or infrastructure manually.

Code

Conclusion

With both the frontend and backend successfully deployed the application could now be accessed by visiting a public URL. This was a good because it meant the tool was no longer needed to be run locally. Anyone with the URL could now use the application. Deploying on AWS both met the project requirements and also made for a scalable environment for the tool to run in.

Luuk Briels - 467020 - Media Design

Luuk Briels - 467020 - Media Design

Luuk Briels - 467020 - Media Design