Gorilla is a REST API template for efficient personal development, implemented based on the CleanArchitecture design philosophy.

Gorilla

Gorilla logo

I hope that by using Gorilla, you will be able to develop your projects more efficiently and speedily. - dj-hirrot -

About

The Gorilla Template is a REST API template for efficient personal development, implemented based on the CleanArchitecture design philosophy.

Features

  • It's implemented with the CleanArchitecture design philosophy.
  • By annotating the functions, Swagger documentation can be generated automatically.
  • Mocks can be generated automatically based on the abstracted class.
  • It runs on a Docker container, and hot reloading by "fresh" is applied.
  • (CI has been introduced in GitHub Workflow).

CleanArchitecture

Layer Description
./docker/api/* API Container
./docker/db/* DB Container. In this project, MySQL is used, but the hierarchy is divided so that other databases can be supported.
./docker/db/init.sql It will be placed and executed /docker-entrypoint-initdb.d when the container is started.
./docs/* Swagger Docs will be generated here. You can view it by accessing http://localhost:8080/swagger/index.html with your browser.
./mocks/* The file generated by mockgen will be placed here. You can run tests on abstract classes.
./src/* The application
./src/domain/* Enterprise Business Rules
./src/usecase/* Application Business Rules
./src/interface/* Interface Adapters
./src/infrastructure/* Frameworks & Drivers

Swagger Preview

🍺 http://localhost:8080/swagger/index.html 🍺 Swagger preview

Depends on:

Installation

Getting started

// The following commands will launch the API and DB containers respectively.
$ make run

// The following commands will stop the API and DB containers respectively.
$ make stop

// If you want to delete the mounted volume as well, execute the following command.
$ make remove

// Run the following command to test.
$ make test

// The following command will automatically generate the Swagger document.
$ make gswag
Similar Resources

Api-e-commerce - Golang fiber e commerce template

Golang fiber e commerce template Stack Golang v1.17 Fiber v2.24.0 Validation v10

May 7, 2022

REST server to build and install multicloud environments based on shared.configV2

builder A REST server to build and install multicloud environments based on shared.configV2 json For configuration, please see the Documentation Below

Nov 2, 2021

Simple online shop which is implemented using golang

Espresso The service that we’re going to build is a simple OnlineShop. It will provide APIs for the frontend to do following things: Create and manage

Nov 28, 2021

A blog system implemented via golang.

goblog functions work as a blog site read/write blogs signup/signin/logout vote with stars 1~5 user admin: add ranks to users: bronze, silver, gold wo

Jan 5, 2022

REST API for RabbitMQ, Write with Google Go(lang).

RabbitMQ HTTP API REST HTTP API for RabbitMQ, it's not RabbitMQ Management Plugin. Status: Under active development. Required: * RabbitMQ (2.8+) * Go(

Aug 29, 2022

Simple Bank is a simple REST API that allows users to perform transferences with each other.

Simple Bank is a simple REST API that allows users to perform transferences with each other. 🔧 Technologies Golang Docker PostgreSQ

Feb 15, 2022

Sample Go REST API implementation with DDD using Clean Architecture.

This layer is a part developed for client-side (mobile, web, etc.) applications to access our domain. It will forward the requests from this layer to the application layer and expose the response it receives from the application layer.

Jan 3, 2023

Simple vanilla Go CRUD application with mongoDB database with its mflix dataset that I use for my thesis about benchmarking REST API and GraphQL.

Go GraphQL Simple vanilla Go CRUD application with mongoDB database with its mflix dataset that I use for my thesis about benchmarking REST API and Gr

Oct 15, 2021

This product about make link to be short link with golang rest api

This project using golang with go fiber, firebase, and dependency injection

Oct 13, 2021
Dating-server - Go (Golang) API REST Template/Boilerplate with Gin Framework

go-rest-template Go (Golang) API REST Template/Boilerplate with Gin Framework 1.

Apr 3, 2022
Golang beego framework based personal simple blog system
Golang beego framework based personal simple blog system

goblog 基于Golang的个人简易博客系统 [TOC] goblog介绍 goblog基于go语言开发的一个简约版个人博客系统,基于Golang语言编写,后端基于了Beego的web框架,目前具备博文系统最基础的功能模块.基本上是一个拿来即用的个人博文平台,只需要部署一个mysql数据存储服务

Nov 9, 2021
Misou is a personal search engine very much inspired by monocle that looks through my knowledge sources.
Misou is a personal search engine very much inspired by monocle that looks through my knowledge sources.

?? Mi 搜 - a personal search engine Misou is a personal search engine very much inspired by monocle that looks through my knowledge sources. It is writ

Nov 7, 2022
Go backend for the Vue-Go personal digital library application

Motivation Create a backend that connects to a cloud storage, so to store and retrieve my personal books. Barebone application State “DONE” from “NEXT

Dec 23, 2021
This is my personal website, hosted on GitHub Pages

astrophena.name This is my personal website, hosted on GitHub Pages. Serving locally You need the latest Go and Node.js installed.

Nov 16, 2022
基于go-kratos +Ant Design Pro的前后端分离微服务管理系统后端模块
基于go-kratos +Ant Design Pro的前后端分离微服务管理系统后端模块

项目前端是基于Ant Design Pro来创建的,后端是基于go-kratos来创建的一个前后端分离的管理系统

Nov 24, 2022
Build a TodoList with Go Design and implement a backend RESTful service in golang with CRUD

May we ask Igor to do a little project in leu of sample code? If there is a hire, the hours spent should be invoiced, so please keep track of that. Th

May 5, 2022
Blog - Exploring Domain Driven Design In Go

Exploring Domain Driven Design In Go

Jan 25, 2022
A simple supermarket API implemented in Golang

supermarket-api The supermarket-api is a Golang application that responds to HTTP requests for updating produce information in a backend database. The

Nov 24, 2021
Ecommerce-api - Rest api of e-commerce web application
Ecommerce-api - Rest api of e-commerce web application

E-commerce Rest API Swagger documentation to test api Domain diagram

Jan 2, 2023