title: Go project structure - Best practice
body: <p>I need to create GO project (first time) for production, I searched on web for best practices and found the following</p>
  
  <p><a href="https://github.com/golang-standards/project-layout" rel="nofollow noreferrer">https://github.com/golang-standards/project-layout</a></p>
  
  <p>For this I've two main questions.</p>
  
  <ol>
  <li><p>I see that most of go projects logic is inside the main function, but in case I need some utils folder with files there, where should I put it ?
  I don't want that the main function will be mass of 500 or more lines of code  </p></li>
  <li><p>In our company the projects should be build like following</p>
  
  <pre><code>myproj
    |-src
      |-cmd
      |  |-main.go
      |-utils
      |-vendor
  </code></pre></li>
  </ol>
  
  <p>Our company project build as above structure i.e. the project files is under the <code>src</code> folder, is it right? (can we have issue in the future with this structure type).</p>
  
  <p>I was able to compile this project in our landscape but since everything is under <code>src</code> I'm not sure.</p>