This project has 3 main folders:
backend
: Server side APIclient
: Frontend HTML+CSS+JS code, plus a lightweight application serverinfrastructure
: Terraform code to deploy the server infrastructure to AWS
Note that AWS is not a dependency, and both backend
and client
applications can be deployed on other cloud
providers.
Deploying both client
and backend
application to a server can be done using Capistrano,
which is already configured. There are preconfigured Github Actions that will
automatically deploy both applications from key branches (staging
and main
) to their corresponding server
environments (staging
and production
).