A project might have more than just the source code for the project, for example, configuration files and project documentation. Depending upon preferences, the way the project is structured can drastically change. However, the most important thing to remember is that the entry point to the whole program is through the main function, which is implemented within main.go as a convention.
The application we will be building in this book, will have the following initial structure:
$ tree . ├── common │ ├── helpers.go │ └── test_helpers.go └── main.go