domains / families / software-engineering / golang-project-layout

golang-project-layout

separate

Golang project layout and workspace setup — cmd/internal/pkg directory conventions, module and package naming, go.work workspaces, and essential configuration files. Use when starting a new Go project, organizing an existing codebase, setting up a monorepo with multiple packages, creating CLI tools with multiple main packages, or discussing package restructuring, package splits, or module splits. Not for restructuring existing code without a layout change (→ See `samber/cc-skills-golang@golang-refactoring` skill).

When to use

When not to use

Skill page

Source

RepositoryPath
samber/cc-skills-golangskills/golang-project-layout/SKILL.md