Pitch: Backend RESTful Go de prateleira
Pro pessoal que tem interesse em desenvolvimento de backend em go, fiz um projetinho de brincadeira e pensei em corpartilhar por aqui...
Trata-se de um framework que faz o backend em Go para o desenvolvedor a partir da definição da sua base de dados (descreve os dados numa estrutuda no próprio pacote, carrega ele de um json). Por exemplo:
var UserResource = gosimplerest.Resource{
Name: "users",
PrimaryKey: "uuid",
Fields: map[string]gosimplerest.Field{
"uuid": {},
"first_name": {},
"phone": {},
"created_at": {},
"deleted_at": {},
},
SoftDeleteField: null.NewString("deleted_at", true),
}
Basicamente vai criar as rotas básicas automaticamente (GET, GET/id, POST, PUT, PATCH, DELETE, HEAD, HEAD/id), e pode ser implementado com diferentes frameworks web da linguagem.
O projeto abre mão da característica de "type safety" do go pra alcançar uma maior generalização.
Enfim, o projeto está em https://github.com/franciscoescher/gosimplerest
Tem um passo a passo em inglês de como comecei a implementar em https://medium.com/@francisco-escher/golang-restful-api-out-of-the-box-6875bc19adbe
Espero que desperte algum interesse :)