Categorygithub.com/Gabriel-Newton-dev/gin-api-rest
modulepackage
0.0.0-20230412024353-756357c037e6
Repository: https://github.com/gabriel-newton-dev/gin-api-rest.git
Documentation: pkg.go.dev

# README

API REST EM GOLANG COM GIN


Status do Projeto: concluido

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 do zero, criando rotas, endpoints, modelos etc. Conectei a minha aplicação com um banco de dados Postgres o qual configurei usando o Docker-compose. Além disso, implementei o CRUD completo(GET, PATCH, POST, DELETE), fiz rotas para busca por ID, CPF e RG.

Criei e apliquei diferentes validações, realizei a criação de testes dos principais endpoints da minha aplicação, testes esses o qual conecta com banco de dados, cria e deleta recursos para mock de testes, entre outros.

Renderização para visualização das informações da API na página HTML, usando também o framework GIN.

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/gin-api-rest.git

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:

IDcreated_atupdate_atdelete_atnomecpfrg
22023-01-05 22:20:342023-01-05 22:20:34Gabriel Newton123.456.789-0012.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

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author