- Automating deployments in GitHub codespaces
- Software Engineering
- Strong programming background in building APIs
🏁 To undertake this project you should have already completed one or more of the following modules.
- Cloud computing
- Software design and programming
- Programming in Java
- Software design and programming
- Internet and web technologies
- Knowledge of programming using
Node.jsor similar frameworks. - Knowledge or willingness to learn building APIs using
Go. - Fundamental knowledge of cloud computing and use of command line interfaces (
Linux). - Understanding of REST APIs and use of
Docker. - Knowledge of
GitHuband theGitHub cli.
GitHub codespaces are a popular way of running prototype cloud applications. Each codespace is hosted by GitHub in a Docker container, running on a virtual machine. The project aims to the development of a custom API backend to allow front-end applications or systems to interact with Codespaces, including user authorization, access delegation, initializing GitHub repositories using custom programming seeds, deploying prototype applications using custom virtual resources and, using the API to manage GitHub workspaces such as updating applications and capturing terminal outputs.
Watch the following project description video.
- You will be provided with access to the Google Cloud Platform or Amazon Web Services.
- You will be provided with seed repositories and other resources to start your developments.
- Kickstart project ➡️ Seed Node.js repository
- Kickstart project ➡️ Seed Go repository
- You will learn how to integrate custom software with
GitHuband build microservices. - You will learn how to use popular cloud platforms and deploy software on
Kubernetes. - You will develop skills in REST API development using
Node.jsandGo. - You will learn how to use modern DevOps pipelines for software development.
- 5/5
This is a challenging project with a heavy implementation. The project implementation will be organized around features. Not all features need to be developed for this project.