- Docker (with compose support)
- Go 1.18+
- GNU Make
The following make
command is provided for easy deployment on the local machine:
make docker/build docker/run
This should automatically build the project and launch all the necessary containers in Docker.
You can see all available commands along with a short help text simply by typing make
.
For testing, you can use any valid HS256 JWT created with the secret key from config.json
(supersecret
is the default), such as this one:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE1MTYyMzkwMjJ9.rf0rI9lvdgd91-qfOjv4ChS0JHRWK2qeZMqTiMvvF5Q
- Build the Docker image using
make docker/build
- Optionally, tag the image with appropriate name for your container registry
- Deploy to Compose, Kubernetes, or plain Docker
- Run unit tests using
make unittest
- Run integration tests using
make integration-test
. These tests will run in a docker container using postgres database image - Run all tests using
make test
- Better error handling & logging (i.e. return proper HTTP error codes for low-level errors)
- Stricter JWT validation
- GRPC delivery layer
- Atomic mutations & events (outbox table?)
- Add actual Kafka support