Skip to content

PerimeterX/go-project-structure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Project Structure

go-project-structure-logo

Licence Latest Release Issues Contributor Covenant

This is a template repository for Go projects.

We released a blog post revealing the story behind this structure. Our internal journey at HUMAN Security to find the best project structure, the decision we’ve taken, and the conclusions we’ve drawn along the way.

To view a full example, navigate to the example branch.

Each of the directories in this repository contains a README file describing its purpose.

Contents

Usage

To create a new project, fork this repository or use it as a template repository.

Project Structure Design

The project structure is designed with independent packages in mind, according to hexagonal architecture, and targeted to provide the following benefits:

  • Structural coherence
  • Separation of business logic and infrastructure
  • Reusability
  • Dependency declaration

Fore more info, read the full article behind this structure.

Contact and Contribute

Reporting issues and requesting features may be done in our GitHub issues page. For any further questions or comments you can reach us out at open-source@humansecurity.com.

Any type of contribution is warmly welcome and appreciated ❤️ Please read our contribution guide for more info.