In our team we have most projects structured like this:
/project-folder
|
|__/build (/.gitlab-ci for projects moved to our own gitlab instance)
|__/cmd (folder for your entrypoints. One or more if your projects generates more than 1 binary)
|__/bin_name1 |__/bin_name2
|__/internal (folder for your sources packages)
|__/config (package config) |__/http (package HTTPServer, api, etc) |__/api |__/models |__/database (package database) |__...
|__/api (swagger and such)
|__/docs (godoc)
|__/.golangci.yml
|__...
Something like this.
In our team we have most projects structured like this:
/project-folder
|
|__/build (/.gitlab-ci for projects moved to our own gitlab instance)
|
|__/cmd (folder for your entrypoints. One or more if your projects generates more than 1 binary)
||__/internal (folder for your sources packages)
||__/api (swagger and such)
|
|__/docs (godoc)
|
|__/.golangci.yml
|
|__...
Something like this.