angular-hexagonal

Implement four-layer Angular hexagonal architecture with domain, application, infrastructure, and presentation artifacts.

10|7|Updated Jan 5, 2026
One-click install
npx skills add https://github.com/cuongtl1992/vibe-skills --skill angular-hexagonal
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: angular-hexagonal
Source: https://github.com/cuongtl1992/vibe-skills/tree/main/skills/frontend/angular-hexagonal
Command: npx skills add https://github.com/cuongtl1992/vibe-skills --skill angular-hexagonal

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Provides a structured approach to building Angular features using hexagonal architecture, ensuring clear layer separation and reusable domain components.

Core Features & Use Cases

  • Four-layer architecture: Domain, Application, Infrastructure, Presentation with explicit responsibilities for domain models, repositories, queries, use cases, DTOs, Mappers, and UI state.
  • Use cases include organizing modules across four layers, promoting consistency, testability, and maintainability.
  • Real-world scenario: use in a feature module to separate concerns and enable scalable collaboration across teams.

Quick Start

Create a new Angular feature that follows the four-layer hexagonal structure and place it under libs/features/<feature>/src/lib with domain, application, infrastructure, and presentation artifacts.

Frequently Asked Questions about angular-hexagonal

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

FAQPage Schema
How do I structure an Angular feature using hexagonal architecture?

Angular hexagonal architecture structures features into four layers: Domain, Application, Infrastructure, and Presentation. This organizes domain models, repository ports, use cases, DTOs, mappers, and UI state to ensure clean separation of concerns.

What is the purpose of domain ports and use cases in Angular hexagonal architecture?

Domain ports and use cases in Angular hexagonal architecture define explicit contracts for repository interactions and application logic. This mechanism isolates core domain models from infrastructure dependencies like API clients, enabling better testability and maintainability.

Can I use hexagonal architecture to separate API clients from UI components in Angular?

Yes, hexagonal architecture separates API clients from UI components by placing infrastructure logic in the Infrastructure layer and UI state in the Presentation layer. This ensures domain ports and mappers handle data flow without coupling external dependencies.

How do I organize DTOs and mappers in an Angular layered architecture?

DTOs and mappers in Angular layered architecture belong to the Application and Infrastructure layers. Mappers transform data between API DTOs and domain models, keeping the Domain layer pure and free from external data formats.

When should I apply domain-driven design principles to an Angular module?

Apply domain-driven design to an Angular module when you need scalable collaboration across teams and consistent feature scoping. It is ideal for complex applications requiring immutable interfaces, pure functions, and strict separation of domain logic from infrastructure.