Build the UI For the Platform
We have a software delivery system that builds and deploys new code when we push new commits to our Git repository. This system works well but involves a manual process where we need to set the GitHub webhook URL for each repository we want to deploy. We also can’t specify configurations like the environment variables or autoscaling requirements. A convenient means is required to deploy and configure services using a CLI or web application.
In this project, we’ll build a web application and a GitHub App to make the deployment process convenient. The GitHub App brings more flexibility to how we integrate with GitHub. The web application will contain just enough functionality to allow us to configure the following:
The purpose is to show how to create a GitHub App and a custom-built web application to deploy and manage services. Afterward, we can extend the web application to add and remove environment variables after the service has been deployed or has displayed the logs/metrics for the services.
This project assumes we have good web development knowledge and can understand JavaScript. The web application will be built using Next.js, a React framework for building web apps. We don’t need to be familiar with React or Next.js to read and follow the instructions in this course. We only need to know enough HTML, CSS, and JavaScript. The code will be explained on a high level so that we can build something similar to a web framework we’re familiar with.
The project files are organized in two different directories:
/usercode/serverless-app-platform
: The files in this directory contain partial code that needs to be completed as we follow the project./usercode/complete-project
: This directory contains files with complete code. They’re for reference only, and at any stage, we can verify your attempt and progress by comparing our active files with the completed ones.