DEV Community

loading...

Discussion on: Go project layout

Collapse
bhupesh profile image
Bhupesh Varshney 👾

a more in-depth guide,

GitHub logo golang-standards / project-layout

Standard Go Project Layout

Standard Go Project Layout

Translations:

Overview

This is a basic layout for Go application projects. It's not an official standard defined by the core Go dev team; however, it is a set of common historical and emerging project layout patterns in the Go ecosystem. Some of these patterns are more popular than others. It also has a number of small enhancements along with several supporting directories common to any large enough real world application.

If you are trying to learn Go or if you are building a PoC or a toy project for yourself this project layout is an overkill. Start with something really simple (a single main.go file is more than enough). As your project grows keep in mind that it'll be important to make sure your code is well structured otherwise you'll end up with a messy code…