Example golang app that following clean architecture. If you take a look the source code, i'm spliting between the controller and fiber handler, just in case you want to change the implemention for example using other framework or other protocol like grpc, its can easly replaced
docker-compose up
migrate -path db/migrations -database "postgresql://postgres:postgres@localhost/{DB_NAME}?sslmode=disable" up
migrate -path db/migrations -database "postgresql://postgres:postgres@localhost/{DB_NAME}?sslmode=disable" down
go run main.go
go clean -testcache && go test -v -coverprofile=coverage.out ./...
go tool cover -html=coverage.out