For learning purposes, I might suggest the Go implementation of gRPC[1]. As the name implies, it is RPC focused and so doesn't necessarily translate well to a complete web service (HATEOS and such), but still provides some insights into how you might structure your code for that kind of project.
[1] https://github.com/grpc/grpc-go