# README
WEB API WITH GOLANG

Status do Projeto: Andamento
Tópicos
:small_blue_diamond: Descrição do projeto
:small_blue_diamond: Funcionalidades
:small_blue_diamond: Pré-requisitos
:small_blue_diamond: Como rodar a aplicação
Descrição do projeto
Codei essa Api usando apenas Golang e usando o Framework Gin.
Desenvolvi uma API rest utilizando as bibliotecas gin e gorm.
Funcionalidades
:heavy_check_mark: Crud completo no banco de dados;
:heavy_check_mark: Renderização da API na página HTML;
:heavy_check_mark: Testes das funçoes e rotas
Pré-requisitos
:warning: Golang :warning: Docker
Dependências a serem instaladas no terminal na pasta do projeto:
:heavy_check_mark: go get -u github.com/gin-gonic/gin)
:heavy_check_mark: go get -u gorm.io/gorm
:heavy_check_mark: go get gorm.io/driver/postgres
:heavy_check_mark: go get github.com/spf13/viper
:heavy_check_mark: go get gopkg.in/validator.v2
Como rodar a aplicação :arrow_forward:
No terminal, clone o projeto:
$ git clone https://github.com/Gabriel-Newton-dev/web-api-with-golang
Ainda no terminal execute:
$ go run main.go
Como rodar os testes
Para executar todos os testes
$ go test
Para executar um teste específico
$ go test -run + nome do teste
$ go test -run TestSearchByCPF (exemplo)
Casos de Uso
Para utilizar a mesma além de fazer as instalações necessárias conforme dito acima, se faz necessário criar e apontar as suas variáveis de ambiente privadas, para que você consiga configurar o docker-compose e subir o seu container com o respectivo banco de dados.
JSON :floppy_disk:
Usuários:
ID | created_at | update_at | delete_at | nome | cpf | rg |
---|---|---|---|---|---|---|
2 | 2023-01-05 22:20:34 | 2023-01-05 22:20:34 | Gabriel Newton | 123.456.789-00 | 12.345.678-9 |
Iniciando/Configurando banco de dados
Para iniciar o banco de dados se faz necessário apontar as variaveis de ambiente, após rodar o comando:
$ docker-compose up
Linguagens, dependencias e libs utilizadas :books:
Resolvendo Problemas :exclamation:
Em issues foram abertos alguns problemas gerados durante o desenvolvimento desse projeto e como foram resolvidos.
Desenvolvedor:

Licença
The MIT License (MIT)
Copyright :copyright: Ano - Titulo do Projeto