A pokedex REST API kata in go
Go to file
Wouter Groeneveld 3237dcbc2a try to optimize the binary using UPX 2024-04-15 14:09:29 +02:00
docs add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
pb add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
pokemon add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
rest add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
.gitignore add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
Makefile try to optimize the binary using UPX 2024-04-15 14:09:29 +02:00
README.md try to optimize the binary using UPX 2024-04-15 14:09:29 +02:00
go.mod add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
go.sum add protobuf contract back to front; make pokemon structs internal 2024-04-15 13:56:10 +02:00
main.go try to optimize the binary using UPX 2024-04-15 14:09:29 +02:00
server.go initial commit 2024-04-15 10:27:31 +02:00

README.md

Pokedex README

A simple Go-powered REST API kata.

HTTP Server

  • KISS: Use built-in http package. https://gin-gonic.com/ looks cooler but also adds dozens of dependencies 😮 No need for a "fully-featured" web framework.

Protobuf

Why? Separation of concerns; do not expose database/domain internals. Structs in pokemon.go should not leave the package. The .proto file serve as the official "contracts".

Swagger

Optimizing the binary

See Makefile; use https://upx.github.io/ to package after stripping some debug info.

Somehow doesn't work on OSX (process killed)?