We are using similar layout (albeit we just need cmd and internal directories for most of our project) and it works perfectly.
Anyway - this is not Rails or any other framework were the developer may be dependent on project structure. I just shared a possible option.
>It's a terrible
Why though?
PS: I just realized it has golang-standards in its path. Okay, this part can actually be misleading.
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.
> https://github.com/golang-standards/project-layout
I was almost with you but please don't share that repo. It's a terrible layout and the docs aren't accurate. The issues are full of Go community folk saying it's misleading and looks official but isn't.