Setup:
Install the following tooling:
- go - the main programming language for this project
- taskfile - task runner and build tool written in go
- docker - container builder and runtime
- minikube - local kubernetes development instance ( will install kubectl as well )
- kubectl - kubernetes controller
- helm - kubernetes package manager
- nodejs - javascript runtime for frontend tooling
If you are using homebrew for MacOS or Linux,
A Brewfile
is checked into this repo for easy setup. If you add to this list, please update the Brewfile
$ brew bundle
Run the app:
- Start docker ( OSX:
open -a Docker
) - Deploy a new database on docker
$ task db:start
- Start the web server
$ task web:start
- Ensure environment file is correct
web/.env
( copy fromenv.template
). - Navigate to the localhost:{port} printed in the console
Feature Testing
Feature acceptance testing is done via godog