GitHub - golang-standards/project-layout: Standard Go ...
Note that you are not limited to the top level internal directory. You can have more than one internal directory at any level of your project tree. You can optionally add a bit of extra structure to your internal packages to separate your shared and non-shared internal code.