Golang Clean Architecture based on Uncle Bob's Clean Architecture and Summer internship in 2021

Overview

clean-architecture-api

Description

This is an example of implemention of Clean Architecture in Golang projects.

This project has 4 layer :

  • Infrastructure Layer (Frameworks & Drivers)
  • Interface Layer (Interface Adapters)
  • Usecase Layer (Application Business Rules)
  • Domain Layer (Enterprise Business Rules)

Run the Applications

This projects used a firestore. You must set the firestore. The following Golang入門 Firestore導入篇

# Setting
$ go mod tidy

# Prepare firestore account, and setting
$ path/to/serviceAccount.json

# Move to directory
$ cd application

# Run the application
$ go run main.go

# Execute the call
$ http://localhost:1323/users

References

Owner
daiki sakuma
UoA 27th
daiki sakuma
Clean Architecture in Go (Golang) projects-DDD

go-clean-arch Changelog v1: checkout to the v1 branch Proposed on 2017, archived to v1 branch on 2018 Desc: Initial proposal by me. The story can be r

zhangxiaoxin 1 Oct 11, 2021
Example go clean architecture folder pattern

Golang Clean Architecture (Maintenance) Berikut ini adalah folder structure pattern yang biasa saya gunakan, walaupun tidak semua nya saya terapkan di

Restu Wahyu Saputra 44 Jul 25, 2022
The GopherCon 2021 "Production AI with Go" workshop materials.

GopherCon 2021 "Production AI with Go" Workshop Machine learning and artificial intelligence (ML/AI) applications are increasingly colliding with the

Daniel Whitenack 11 May 7, 2022
At this example project, I'm trying to learn Golang with Clean structure and come up with a reusable

Learning Golang Language In Clean Structure At this example project, I'm trying to learn Golang with Clean structure and come up with a reusable, nice

GoTorn 4 Jul 17, 2022
DCI Architecture Implementation

前言 在面向对象编程的理念里,应用程序是对现实世界的抽象,我们经常会将现实中的事物建模为编程语言中的类/对象(“是什么”),而事物的行为则建模为方法(“做什么”)。面向对象编程有三大基本特性(封装、继承/组合、多态)和五大基本原则(单一职责原则、开放封闭原则、里氏替换原则、依赖倒置原则、接口分离原则

元闰子 12 Jul 13, 2022
A software architecture style example for APIs that utilizes the features of SOLID-Principle.

Engelbyte's Waterbyte Clean Architecture A software architecture style example for APIs that utilizes the features of SOLID-Principle. The example sho

Waterbyte 0 Feb 9, 2022
My ML - A machine learning package based on golang

my_ML a machine learning package based on golang 这是一个基于golang的机器学习库和一些机器学习的数据集,可

luke_luke 1 Feb 15, 2022
The go language version developed based on hashlips_art_engine. Added and deleted some functions

golips_art_engine The inspiration for this tool is based on HashLips Art Engine. Our official links ?? Twitter ?? Discord ?? NFT Why building a new to

null 10 Jul 28, 2022
A course to build distributed key-value service based on TiKV model

The TinyKV Course This is a series of projects on a key-value storage system built with the Raft consensus algorithm

TiDB Incubator 1.9k Aug 7, 2022
TiDB In Action: based on 4.0

Gitbook Read it: TiDB In Action: based on 4.0 深入介绍了 TiDB 的基本原理和操作,它是基于

TiDB Incubator 681 Jul 26, 2022
Patternfinder - Find patterns in http output based on regex string. Display occurences

Patternfinder Find patterns in HTTP output based on regex string. Display occurr

YouGina 1 Feb 18, 2022
This is my first golang project. The main reason for its existence is the need for practice. I will be studying golang while writing this project

My first GoLang project Project Aim The goal of this project is to develop the most simple golang bot to learn how to work with this programming langu

F0rzend 6 Jan 7, 2022
A complete guide to undersatnd golang programming language, web requests, JSON and creating web APIs with mongodb

Golang series A complete guide to undersatnd golang programming language, web requests, JSON and creating web APIs with mongodb LearnCodeonline.in 01

HItesh Choudhary 74 Aug 6, 2022
I will be uploading some basic programming in Golang so if you want to contribute please Fork this repo and contriute.

Go-language I will be uploading some basic programming in Golang so if you want to contribute please Fork this repo and contriute. This repo is for pr

Sahitya Roy 3 Jan 21, 2022
Learn Golang in-depth by solving 15 Quizzes, 10 Exercises and 4 Projects

Modern Go (Golang) - The Complete Beginners Guide 2021 Learn Go (Golang) in-dept

Classroooms 2 May 30, 2022
Digging into the ins and outs of Golang boxing.

Golang boxing This repository is used to dig into the ins and outs of Golang boxing. Prerequisites The examples in this repository require Golang 1.18

Andrew Kutz 27 Jul 20, 2022
Tool (in Go!) to compare and diff container and host environments. Dinosaur fun!

Compe compare environments and other things between containers, and host ??️ This is a simple tool to compare environments and other features of conta

Vanessasaurus 0 Jan 16, 2022
Golang 设计模式

Golang设计模式思想 前言 一切设计模式都是灵活应用struct的组合模式,以及go隐形继承接口的特性 go中的interface就是一些方法装饰, 而struct并不依赖于接口 设计模式类型 创建模式 建造者模式(Builder Pattern) 将一个复杂对象的构建与它的表示分离, 使得同样

JKlee 927 Aug 1, 2022
7 days golang programs from scratch (web framework Gee, distributed cache GeeCache, object relational mapping ORM framework GeeORM, rpc framework GeeRPC etc) 7天用Go动手写/从零实现系列

7 days golang programs from scratch README 中文版本 7天用Go从零实现系列 7天能写什么呢?类似 gin 的 web 框架?类似 groupcache 的分布式缓存?或者一个简单的 Python 解释器?希望这个仓库能给你答案

Dai Jie 11.1k Aug 8, 2022