clean-ddd-hexagonal

Enforce Clean Architecture, DDD, and Hexagonal patterns in backend services.

Updated Mar 9, 2026
One-click install
npx skills add https://github.com/EduardoJVN/my-ia-config --skill clean-ddd-hexagonal-eduardojvn
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: clean-ddd-hexagonal
Source: https://github.com/EduardoJVN/my-ia-config/tree/main/.claude/skills/clean-ddd-hexagonal
Command: npx skills add https://github.com/EduardoJVN/my-ia-config --skill clean-ddd-hexagonal-eduardojvn

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a robust framework for building scalable, maintainable backend services by enforcing Clean Architecture, Domain-Driven Design, and Hexagonal Architecture principles. It guides developers in structuring code for long-lived, complex applications.

Core Features & Use Cases

  • Layered Architecture: Enforces strict dependency flow (Infrastructure → Application → Domain).
  • Domain-Centric Design: Prioritizes business logic in the Domain layer, ensuring language-agnostic solutions.
  • Hexagonal Ports & Adapters: Decouples core logic from external concerns like databases and APIs.
  • Use Case: Designing a new microservice for order management, ensuring it's testable, scalable, and easy to maintain over time.

Quick Start

Use the clean-ddd-hexagonal skill to generate a new module for managing user accounts following the specified architectural patterns.

Frequently Asked Questions about clean-ddd-hexagonal

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

FAQPage Schema
How do I structure a microservice using hexagonal architecture and DDD?

Structure a microservice using hexagonal architecture and DDD by enforcing a strict inward dependency flow from Infrastructure to Application to Domain. This decouples core business logic from external concerns like databases, ensuring scalable and maintainable backend services.

What's the best way to decouple business logic from database APIs in backend development?

Decouple business logic from database APIs in backend development by implementing hexagonal ports and adapters. This pattern isolates the Domain layer, ensuring your core logic remains language-agnostic and independent of external infrastructure concerns.

Can I use clean architecture patterns for backend services written in Go, Rust, or Python?

Clean architecture patterns apply to backend services written in Go, Rust, Python, TypeScript, Java, and C#. The Domain-centric design ensures language-agnostic solutions, prioritizing business logic while enforcing strict inward dependency flows across different languages.

How do I enforce strict dependency rules and type safety in a scalable backend codebase?

Enforce strict dependency rules and type safety in a scalable backend codebase by applying clean architecture principles. This framework prohibits `any` types, enforces path aliases, and mandates type-only imports to maintain robust and maintainable code.

When should I use domain-driven design for API design and microservices?

Use domain-driven design for API design and microservices when building long-lived, complex applications. It prioritizes business logic in the Domain layer, providing a robust framework that makes your backend services highly testable, scalable, and easy to maintain.

What is the dependency flow in clean architecture for backend development?

The dependency flow in clean architecture for backend development moves strictly inward: Infrastructure depends on Application, which depends on Domain. This layered architecture ensures external concerns never pollute core business logic.