One-click install
npx skills add https://github.com/leksa/dayawarga-senyar-2025 --skill golang-enterprise-patterns-leksa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: golang-enterprise-patterns
Source: https://github.com/leksa/dayawarga-senyar-2025/tree/main/.claude/skills/golang-enterprise-patterns
Command: npx skills add https://github.com/leksa/dayawarga-senyar-2025 --skill golang-enterprise-patterns-leksa

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The Go projects with complex business logic require a scalable, maintainable architecture; this skill provides guidance on enterprise-grade patterns like clean architecture, hexagonal architecture, and DDD.

Core Features & Use Cases

  • Clean Architecture guidance and folder structure
  • Hexagonal Architecture with ports and adapters
  • Domain-Driven Design patterns in Go
  • Dependency Injection patterns for testable code
  • Documentation of error handling and configuration patterns

Quick Start

Design a new Go service using clean architecture with a layered structure and ports/adapters to enforce boundaries.

Frequently Asked Questions about golang-enterprise-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a Go project using clean architecture and DDD patterns?

Hexagonal architecture in Go isolates core business logic using ports and adapters, allowing external dependencies to interact through defined boundaries. This pattern keeps your domain independent from infrastructure, making components easily swappable and testable.

What is the best way to implement dependency injection in Go for testable code?

The best way to implement dependency injection in Go is by explicitly passing dependencies to structs or constructors, avoiding global state. This pattern enables easy mocking of interfaces during testing and supports clean architecture boundaries across your services.

Can I use these enterprise patterns to refactor an existing large Go codebase?

Yes, you can refactor existing large Go codebases to follow enterprise patterns by incrementally applying clean architecture and hexagonal architecture. The process involves defining domain boundaries, introducing ports and adapters, and restructuring error handling for better maintainability.

When do I need domain-driven design for my Go application?

You need domain-driven design in Go when your application has complex business logic requiring a scalable and maintainable architecture. DDD patterns help manage domain complexity by aligning your code structure with business boundaries and enforcing strict dependency rules.

Why does separating domain boundaries matter in enterprise Go applications?

Separating domain boundaries matters in enterprise Go applications because it prevents business logic from leaking into infrastructure layers. Clean architecture ensures dependencies point inward toward the domain, keeping your core logic isolated, testable, and independent of external frameworks.