4 ms·
Damn. > https://github.com/golang-standards/project-layout https://github.com/golang-standards/project-layout I was almost with you but please don't share tha
by hactually 6y ago
Damn.
> https://github.com/golang-standards/project-layout 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.
- phernandez 6y agoI have had this issue with my current golang projects. I haven't found any clear standard for project layout. We have a bunch of microservices with grpc api endpoints, and some which are event driven. Has anyone found a better resource? As it is, even our internal projects are fairly inconsistent in their project structure, which is a bit annoying.
- konart 6y agoThere is no such thing as a standard here. 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.
- konart 6y agoIt is not official and does not say otherwise (neither do I). 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.