/golang-clean-arch-lite

A Clean Architecture lite implementation with Golang

Primary LanguageGoMIT LicenseMIT

Golang Clean Architecture Lite

License Written in Go GitHub release PRs Welcome Docker Contributors Last Update

Run the project

with golang

make run

with docker

make docker_run

with docker compose + hot reload

docker-compose up

Build the project

with golang

make build

with docker

make docker_build

with docker compose

docker-compose build

Clean the project

make clean

Structure files

├── infra
│   └── persistence
│       └── memory_user_repository.go
├── domain
│   ├── entity
│   │   └── user.go
│   ├── repository
│   │   └── user_repository.go
│   └── usecase
│       ├── create_user.go
│       ├── get_user.go
│       └── list_users.go
├── build
│   └── local
│       └── start-container.sh
├── go.sum
├── go.mod
├── main.go
├── Makefile
├── Dockerfile
├── docker-compose.yaml
├── LICENSE
└── README.md