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…
Build Symfony forms with custom Form Types, validation constraints, HTTP 422 handling, and multi-step flows
Claude Code
$ npx -y skills add dev-toolings/superpowers-symfony --skill form-types-validation --agent claude-code
Codex
$ npx skills add dev-toolings/superpowers-symfony --skill form-types-validation -a codex -y
Cursor
$ npx skills add dev-toolings/superpowers-symfony --skill form-types-validation -a cursor -y
Gemini CLI
$ npx skills add dev-toolings/superpowers-symfony --skill form-types-validation -a gemini-cli -y
GitHub Copilot
$ npx skills add dev-toolings/superpowers-symfony --skill form-types-validation -a github-copilot -y
OpenCode
$ npx skills add dev-toolings/superpowers-symfony --skill form-types-validation -a opencode -y
Windsurf
$ npx skills add dev-toolings/superpowers-symfony --skill form-types-validation -a windsurf -y
name: form-types-validation description: Build Symfony forms with custom Form Types, validation constraints, HTTP 422 handling, and multi-step flows capabilities: [read, search, edit, shell] tags: [security] # projected by `bun run build` — do not edit by hand allowed-tools: - Read - Glob - Grep - Write - Edit - Bash
1. Put business constraints on the entity or DTO; keep form-level constraints for UI-only rules such as uploads. 2. Build the form type with explicit field types and options. 3. Split rules into validation groups when contexts differ. 4. Add data transformers or `PRE_SET_DATA`/`PRE_SUBMIT` listeners only where the model and the view disagree. 5. In the controller, check `isSubmitted() && isValid()` and pass the form itself to `render()`.
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
Control API Platform serialization with groups, #[Context], IRI links (readableLink/writableLink), and custom context builders
Master API Platform State Providers and Processors (v5, 4.4, 4.3) (ProviderInterface/ProcessorInterface) to decouple data…
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.