golang-enterprise-patterns

Solid

Enterprise-level Go architecture patterns including clean architecture, hexagonal architecture, DDD, and production-ready application structure.

AI & Automation 335 stars 29 forks Updated today

Install

View on GitHub

Quality Score: 85/100

Stars 20%
84
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
0
Description 5%
100

Skill Content

# Golang Enterprise Patterns This skill provides guidance on enterprise-level Go application architecture, design patterns, and production-ready code organization. ## When to Use This Skill - When designing new Go applications with complex business logic - When implementing clean architecture or hexagonal architecture - When applying Domain-Driven Design (DDD) principles - When organizing large Go codebases - When establishing patterns for team consistency ## Clean Architecture ### Layer Structure ```text /cmd /api - HTTP/gRPC entry points /worker - Background job runners /internal /domain - Business entities and interfaces /application - Use cases and application services /infrastructure /persistence - Database implementations /messaging - Queue implementations /http - HTTP client implementations /interfaces /api - HTTP handlers /grpc - gRPC handlers /pkg - Shared libraries (public) ``` ### Dependency Rule Dependencies flow inward only: ```text Interfaces → Application → Domain ↓ ↓ Infrastructure (implements domain interfaces) ``` ### Domain Layer ```go // domain/user.go package domain import "time" type UserID string type User struct { ID UserID Email string Name string CreatedAt time.Time } // UserRepository defines the contract for user persistence type UserRepository interface { FindByID(ctx context.Context, id U...

Details

Author
aiskillstore
Repository
aiskillstore/marketplace
Created
5 months ago
Last Updated
today
Language
Python
License
None

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category