The MrAndreID/GoAPIGateway is a skeleton uses the Go Programming Language (GoLang) with The Echo Framework for The Application Programming Interface (API) Gateway.
- Requirements
- Installation
- Usage
- Versioning
- Authors
- Contributing
- Official Documentation for Go Language
- License
To use The MrAndreID/GoAPIGateway, you must ensure that you meet the following requirements:
- Go >= 1.24
To use The MrAndreID/GoAPIGateway, you must follow the steps below:
- Clone a Repository
# git clone https://github.com/MrAndreID/goapigateway.git
- Get Dependancies
# go mod download
# go mod tidy- Create .env file from .env.example (Linux)
# cp .env.example .env- Configuring .env file
To use The MrAndreID/GoAPIGateway, you must ensure that you meet the following requirements:
- Directory Structure The
MrAndreID/GoAPIGateway| Name | Description | | :---------------------- | :-------------------------------------------------------- | |application| Initialization of Echo Framework, Middleware, and Routes. | |configs| Configuration from Env File | |internal/handlers| HTTP Handlers | |internal/services| Main Business Logic | |internal/repositories| Connector to Database or API External | |internal/types| Data | - Run The
MrAndreID/GoAPIGateway
# go run main.go- Run The
MrAndreID/GoAPIGatewaywith Docker
# docker build --no-cache -t goapigateway:1.0.0 .
# docker run --name goapigateway --restart=always -d -p -v /path/to/folder:/app/storages -v /path/to/folder:/app/tests/storages 10000:10000 goapigateway:1.0.0
- Set The
MrAndreID/GoAPIGatewayto Maintenance Mode in Storages Folder
# touch storages/maintenance.flagI use Semanting Versioning. For the versions available, see the tags on this repository.
- Andrea Adam - MrAndreID
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Please make sure to update tests as appropriate.
Documentation for Go Language can be found on the Go Package website.
The MrAndreID/GoAPIGateway is released under the MIT License. See the LICENSE file for more information.