Loading...
Loading...
Found 6 Skills
Use when symfony ports and adapters
Use hexagonal architecture for external systems; define ports (interfaces) and per-provider adapters; select adapter at composition edge
Keep a system's business logic independent of the technology it talks to, by reasoning about which way dependencies point across a hexagonal / ports-and-adapters / clean-architecture boundary. A system holds three kinds of code — its reason to exist (the business logic), its connections to the outside world, and how it's run (the wiring and entrypoint) — so the question is never "which folder" but "is this the reason, a connection, or how it's run, and what may it depend on?" Use it to scaffold a new system, place a feature, integration, or entrypoint, review how it's shaped, or write an ADR about the layout — and whenever a dependency points the wrong way or you're unsure where something belongs. Language-/framework-agnostic: the kinds map onto whatever names a project uses (app/infra/run, domain/adapters/cmd). Reach for it even when the user never says "hexagonal": "where should this go", "scaffold it ports-and-adapters", "review against hexagonal principles", "which layer owns this" are all signals.
Design, implement, and refactor Ports & Adapters systems with clear domain boundaries, dependency inversion, and testable use-case orchestration across TypeScript, Java, Kotlin, and Go services.
Provides comprehensive guidance for hexagonal architecture including ports and adapters, domain isolation, and dependency inversion. Use when the user asks about hexagonal architecture, needs to implement ports and adapters pattern, or structure applications with hexagonal architecture.
Hexagonal (ports and adapters) architecture patterns for TypeScript. Use when implementing ports, adapters, dependency inversion, or domain isolation. Only applies to projects that explicitly use hexagonal architecture. Do NOT use for projects without ports/adapters structure.