Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
makfly avatar

Symfony:ports And Adapters Skill

  • 430 installs
  • 190 repo stars
  • Updated August 6, 2026
  • makfly/superpowers-symfony

symfony:ports-and-adapters is a Claude Code skill that implements Hexagonal Architecture in Symfony so domain logic stays isolated from Doctrine, HTTP controllers, mailers, and third-party SDKs via ports and adapter inte

About

symfony:ports-and-adapters is a Symfony Superpowers skill from makfly/superpowers-symfony that implements Hexagonal Architecture (Ports and Adapters) in Symfony projects. The skill separates domain logic from infrastructure with clear boundaries across Domain (entities, value objects, domain services), Application (use cases, commands, queries), and Infrastructure (controllers, repositories, external APIs). reference.md documents a layered directory structure under src/Domain, src/Application, and src/Infrastructure with repository ports, adapter implementations, and Symfony autowiring bindings. Developers reach for symfony:ports-and-adapters when Symfony apps accumulate Doctrine and HTTP coupling in domain classes and need testable, framework-agnostic business logic. The skill is one of 44 expert skills in superpowers-symfony covering API Platform v4, Doctrine ORM 3, Messenger, and DDD patterns.

  • Domain port interfaces
  • Infrastructure adapters
  • Application service layer
  • Swap storage without domain churn
  • Clear bundle boundaries

Symfony:Ports And Adapters by the numbers

  • 430 all-time installs (skills.sh)
  • Ranked #1,035 of 4,492 Backend & APIs skills by installs in the Skillselion catalog
  • Data as of Aug 11, 2026 (Skillselion catalog sync)
npx skills add https://github.com/makfly/superpowers-symfony --skill symfonyports-and-adapters

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs430
repo stars190
Last updatedAugust 6, 2026
Repositorymakfly/superpowers-symfony

How do you implement hexagonal architecture in Symfony?

Structure Symfony apps with ports and adapters so domain logic stays isolated from Doctrine, HTTP, mailers, and third-party SDKs.

Who is it for?

Symfony developers refactoring fat controllers and Doctrine-coupled entities into testable domain-centric hexagonal layers.

Skip if: Small Symfony prototypes where a standard MVC layout suffices and hexagonal layering would add unnecessary ceremony.

When should I use this skill?

Symfony domain logic is tangled with Doctrine repositories, HTTP clients, or mailer SDKs and needs port-adapter separation.

What you get

Layered src/Domain, src/Application, and src/Infrastructure directories with port interfaces, adapter implementations, and Symfony service bindings.

  • Port interfaces
  • Adapter implementations
  • Layered directory structure

By the numbers

  • Defines 3 hexagonal layers: Domain, Application, and Infrastructure
  • Part of the superpowers-symfony bundle containing 44 Symfony expert skills

Files

SKILL.mdMarkdownGitHub ↗

Ports And Adapters (Symfony)

Use when

  • Refining architecture/workflows/context handling in Symfony projects.
  • Planning and executing medium/complex changes safely.

Default workflow

1. Establish current boundaries, constraints, and coupling points. 2. Propose smallest coherent architectural adjustment. 3. Execute in checkpoints with validation at each stage. 4. Summarize tradeoffs and follow-up backlog.

Guardrails

  • Use existing project patterns by default.
  • Avoid broad refactors without explicit need.
  • Keep decision log clear and auditable.

Progressive disclosure

  • Use this file for execution posture and risk controls.
  • Open references when deep implementation details are needed.

Output contract

  • Architecture/workflow changes.
  • Checkpoint validation outcomes.
  • Residual risks and next steps.

References

  • reference.md
  • docs/complexity-tiers.md

Related skills

How it compares

Pick symfony:ports-and-adapters over symfony:controller-cleanup when the goal is architectural layer separation—not just extracting logic from a single fat controller.

FAQ

What layers does symfony:ports-and-adapters define?

symfony:ports-and-adapters defines three hexagonal layers: Domain for pure business logic, Application for use cases and orchestration, and Infrastructure for Symfony controllers, Doctrine repositories, and external API adapters.

When should Symfony developers use ports and adapters?

Symfony developers should use symfony:ports-and-adapters when domain entities import Doctrine annotations, HTTP clients, or mailer SDKs directly. The skill restructures code into testable ports with swappable infrastructure adapters.

Backend & APIsbackendintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.