A Task Management web application written in Golang microservices using the hexagonal architecture pattern.
This mono-repo holds all each microservice as an individual Go module. Each service holds a Dockerfile for containerization.
gateway-service
- README
A reverse proxy gateway which takes a REST HTTP API and forwards through to gRPC calls.
task-service
- README
user-service
- README
Handles user authentication and authorisation. Directly communicates user and session data with the gateway. Also exposes a gRPC adapter that other services can invoke if needed.
See the Task Service for an example hexagonal (ports and adapters) microservice.
- cmd/
- grpc/
- main.go
- grpc/
- internal/
- adapters/
- left/
- grpc/
- right/
- sqlite/
- port/
- domain/
- repository/
- service/
- left/
- adapters/
- pkg/
- config/