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

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

Similar Resources

Patternfinder - Find patterns in http output based on regex string. Display occurences

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

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

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

Jan 1, 2023

I will be uploading some basic programming in Golang so if you want to contribute please Fork this repo and contriute.

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

Jan 21, 2022

Learn Golang in-depth by solving 15 Quizzes, 10 Exercises and 4 Projects

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

Jan 1, 2023

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

Dec 16, 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

Sep 24, 2022

Golang 设计模式

Golang 设计模式

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

Dec 29, 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 解释器?希望这个仓库能给你答案

Jan 5, 2023
Clean Architecture in Go (Golang) projects-DDD
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

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

Dec 21, 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

Dec 23, 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

Sep 25, 2022
DCI Architecture Implementation
DCI Architecture Implementation

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

Dec 15, 2022
A software architecture style example for APIs that utilizes the features of SOLID-Principle.
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

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

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

Feb 15, 2022
The go language version developed based on hashlips_art_engine. Added and deleted some functions
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

Jul 28, 2022
A course to build distributed key-value service based on TiKV model
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

Jan 7, 2023
TiDB In Action: based on 4.0

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

Jan 4, 2023