github.com/miguelgrubin/gin-boilerplate@v0.0.0-20231208120009-f8f00c6d4138/README.md (about)

     1  # Gin Boilerplate
     2  
     3  This repository contains a golang API using hexagonal architecture.
     4  
     5  ## Features
     6  
     7  - Decoupled components (using Ports and Adapters)
     8  - Handmade Swagger documentation
     9  - Mocks generation using Mockery
    10  - Full suite of tests using Testify
    11  
    12  ## Toolkit
    13  
    14  **Included on dependencies**
    15  
    16  - [Gin Gonic](https://github.com/gin-gonic/gin) Web framework
    17  - [Testify](https://github.com/stretchr/testify) Assert + Mocks
    18  - [GORM](https://github.com/jinzhu/gorm) SQL ORM
    19  - [Cobra](https://github.com/spf13/cobra) Command line framework
    20  - [Viper](https://github.com/spf13/viper) Config files toolkit
    21  
    22  **External tools**
    23  
    24  - [Revive](https://github.com/mgechev/revive) Some linters
    25  - [Secure Go](https://github.com/securego/gosec) Security Checker
    26  - [Mockery](https://github.com/vektra/mockery) Generate Mocks
    27  - [Air](https://github.com/cosmtrek/air) Live Reload
    28  - [Delve](https://github.com/go-delve/delve) Debug
    29  
    30  ## Endpoints
    31  
    32  | Method | URL                       |
    33  | ------ | :------------------------ |
    34  | GET    | /health                   |
    35  | POST   | /v1/pets                  |
    36  | GET    | /v1/pets                  |
    37  | GET    | /v1/pet/{petId}           |
    38  | PATCH  | /v1/pet/{petId}           |
    39  | DELETE | /v1/pet/{petId}           |
    40  | GET    | /v1/tags                  |
    41  | POST   | /v1/categories            |
    42  | GET    | /v1/categories            |
    43  | GET    | /v1/category/{categoryId} |
    44  | DELETE | /v1/category/{categoryId} |
    45  | POST   | /v1/orders                |
    46  | GET    | /v1/orders                |
    47  | GET    | /v1/order/{orderId}       |
    48  
    49  ## CLI Usage
    50  
    51  - app
    52  - app serve
    53  - app migrate
    54  - app seed
    55  - app create config