Guidelines
Services
APIs
Web Application
Wiki
System Architecture
Software List
While we welcome contributions made from Windows users, this software was developed on and for Unix machines. Therefore, this documentation will only be maintained with Unix machines in mind.
Must Haves for all Contributors
The following software must be installed to contribute to the codebase:
Go: Go is the primary language used for our backend services.
Docker: Docker is our primary containerization software. We use this for local deployments and builds
Bash (or some unix shell): A unix terminal with bash is necessary to run some of the commands used in the development of this software
-
Must Haves for Maintainers
The following software is necessary for all maintainers, or anyone with production deployment control, to have installed on their machine
Kubernetes - Kubernetes is used for cloud deployments and builds.
Minikube - Minikube is what we use to test local kubernetes deployments
Software Services
Code Versioning
We use github for our code versioning provider. Our github repo can be found here.
Container Versioning
We version our docker containers on docker hub. The containers relevant to this project can be found here:
Cloud Hosing
We use Civo as our cloud host for no other reason than it is a cheap way to host kubernetes deployments.
Deploying
Local Deployments
Our local deployment guidelines can be found here
Production Deployments
Our production deployment guidelines can be found here