architecture

Enforce hexagonal architecture with four layers for IdP-server development.

7|1|Updated Feb 12, 2023
One-click install
npx skills add https://github.com/hirokazu-kobayashi-koba-hiro/idp-server --skill architecture-hirokazu-kobayashi-koba-hiro
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture
Source: https://github.com/hirokazu-kobayashi-koba-hiro/idp-server/tree/main/.claude/skills/architecture
Command: npx skills add https://github.com/hirokazu-kobayashi-koba-hiro/idp-server --skill architecture-hirokazu-kobayashi-koba-hiro

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a structured, extensible framework for developing IdP-server using Hexagonal Architecture and DDD, enabling maintainable multi-tenant designs.

Core Features & Use Cases

  • 4-layer architecture (Controller → UseCase → Core → Adapter) with clear role separation.
  • Handler-Service-Repository pattern and EntryService orchestration to coordinate complex flows.
  • Multi-tenant-first design with Tenant as a primary parameter to ensure isolation and safety.
  • Design principles for validators, verifiers, context creators, and strict data-source boundaries.

Quick Start

Follow this guide to implement a hexagonal architecture with four layers and multi-tenant design in your IdP project.

Frequently Asked Questions about architecture

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

FAQPage Schema
How do I structure multi-tenant isolation in an IdP server architecture?

Multi-tenant isolation in IdP server architecture is structured by enforcing a Tenant-first argument as a primary parameter across all operations. This ensures strict data separation and safety across different tenant environments within the system.

What is the Handler-Service-Repository pattern in hexagonal architecture?

The Handler-Service-Repository pattern in hexagonal architecture separates request handling, business logic, and data access. It coordinates complex flows through EntryService orchestration while maintaining strict boundaries between Core and DataSource layers.

How do I separate validators and verifiers in a DDD-based IdP project?

In a DDD-based IdP project, validators and verifiers are separated by assigning them distinct roles within the application layer. Validators handle input format checks, while verifiers enforce domain rules using Context Creator usage.

When do I need a four-layer hexagonal architecture for my application?

You need a four-layer hexagonal architecture when managing high complexity in applications like IdP servers. It uses Controller, UseCase, Core, and Adapter layers to enforce separation of concerns and ensure scalable, maintainable multi-tenant designs.

Does hexagonal architecture work for multi-tenant Identity Provider platforms?

Hexagonal architecture works effectively for multi-tenant Identity Provider platforms by applying separation of concerns and strict layer boundaries. It enforces multi-tenant-first design principles to ensure tenant isolation and operational safety.

What is the best way to manage complexity in IdP server development?

The best way to manage complexity in IdP server development is enforcing a four-layer hexagonal architecture. This standardizes design patterns, separates DataSource and Core boundaries, and applies cross-cutting patterns to ensure scalability.