api-platform-dto-resou…
Map entities to API DTOs in API Platform (v5, 4.4, 4.3) with the Symfony Object Mapper (#[Map], stateOptions) for decoupled…
Control API Platform serialization with groups, #[Context], IRI links (readableLink/writableLink), and custom context builders
Claude Code
$ npx -y skills add dev-toolings/superpowers-symfony --skill api-platform-serialization --agent claude-code
Codex
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-serialization -a codex -y
Cursor
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-serialization -a cursor -y
Gemini CLI
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-serialization -a gemini-cli -y
GitHub Copilot
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-serialization -a github-copilot -y
OpenCode
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-serialization -a opencode -y
Windsurf
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-serialization -a windsurf -y
name: api-platform-serialization description: "Control API Platform serialization with groups, #[Context], IRI links (readableLink/writableLink), and custom context builders" capabilities: [read, search, edit, shell] tags: [api-platform] # projected by `bun run build` — do not edit by hand allowed-tools: - Read - Glob - Grep - Write - Edit - Bash
1. Name groups `entity:operation` and set `normalizationContext` and `denormalizationContext` per operation. 2. Tag properties with `#[Groups]` from the Serializer `Attribute` namespace, not the old `Annotation` one. 3. Control relations with `#[ApiProperty(readableLink: false, writableLink: false)]` to force IRIs. 4. Apply per-property options with `#[Context]` instead of writing a normalizer. 5. Add computed fields in a custom normalizer, and dynamic groups in a decorator of `api_platform.serializer.context_builder`. 6. Prevent cycles with `#[MaxDepth]` and `enable_max_depth`, and hide secrets with `#[Ignore]`.
Superpowers Symfony gives coding agents deep, version-accurate Symfony expertise: from Doctrine schema design and API Platform REST/GraphQL APIs to test-driven development, async Messenger workflows, caching, rate limiting, and clean architecture.
Map entities to API DTOs in API Platform (v5, 4.4, 4.3) with the Symfony Object Mapper (#[Map], stateOptions) for decoupled…
Implement API Platform filters - Parameters API (QueryParameter, v5/4.4/4.3) and the #[ApiFilter] attribute deprecated since 4.4…
Configure API Platform resources (v5, 4.4, 4.3) with explicit operations, pagination, and typed OpenAPI for clean, versioned…
Secure API Platform resources with security expressions, voters, securityPostValidation, and operation-level access control
Master API Platform State Providers and Processors (v5, 4.4, 4.3) (ProviderInterface/ProcessorInterface) to decouple data…
Test API Platform resources with ApiTestCase; assert collections, items, filters, JSON schema, and authentication
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.