gerard-labs

60 mods across 1 repository, 2 stars between them.

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Master API Platform 4.3 serialization — design groups (entity:operation convention, read ≠ write), force IRI on relations with #[ApiProperty(readableLink: false, writableLink: false)], prevent circular references with MaxDepth, use BackedEnum natively, apply #[Context] for per-property formats, install a Context…

2 3mo ago A 170 tokens original MIT

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Write or evolve an API Platform 4.3 State Processor — turn a DTO Input into a persistence effect (Doctrine + dispatch). Covers the Autowire-based decoration of apiplatform.doctrine.orm.state.persistprocessor / removeprocessor, the DeleteOperationInterface discriminator, the native Messenger modes (messenger: 'input'…

2 3mo ago A 140 tokens copy · 86% MIT

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Write or evolve an API Platform 4.3 State Provider — transform a data source (Doctrine, external API, cache) into the API representation. Covers the modern Autowire-based decoration of apiplatform.doctrine.orm.state.itemprovider / collectionprovider, the CollectionOperationInterface discriminator, header-versioned…

2 3mo ago A 118 tokens original MIT

api-platform-tests

52

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Write production-grade API Platform 4.3 functional tests with ApiTestCase — Foundry factories + ResetDatabase, DAMA Doctrine test bundle (transaction-rollback per test), ParaTest for parallel execution, lightweight md5 password hashing in test env, reusable authenticated client (createClientWithCredentials)…

2 3mo ago A 257 tokens original MIT

api-platform-user

54

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Implement the canonical API Platform 4.3 + Symfony 7.4+ User entity — User implements UserInterface, PasswordAuthenticatedUserInterface, #[UniqueEntity('email')], a transient $plainPassword validated only on user:create, the persisted hashed $password excluded from every serialization group, a UserPasswordHasher State…

2 3mo ago A 196 tokens original MIT

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Plan and implement API Platform 4.3 versioning — URI versioning (/v1/, /v2/), separate Output DTOs per version (with dedicated Providers), header-based versioning (X-API-Version resolved in a versioned Provider), additive group-based versioning for minor changes, deprecation with the 4.x attribute (deprecationReason…

2 3mo ago A 179 tokens original MIT

bootstrap-check

56

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Verify a Symfony project's bootstrap state before any work — .env / .env.dist parity, config/bundles.php enabled bundles, config/services.yaml recipe-default App\ block with exclude:, config/packages/apiplatform.yaml flags (hydraprefix, eagerloading.forceeager, usesymfonylisteners), composer.lock presence, framework /…

2 3mo ago A 125 tokens original MIT

brainstorming

57

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Pre-architecture brainstorming for an API Platform feature — when the story isn't yet stable enough to feed /architect. Explores requirements, identifies invariants, considers alternatives, surfaces unknowns, defines the smallest valuable slice. Output: a refined story description ready for /architect or…

2 3mo ago A 81 tokens original MIT

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Manage Symfony configuration layers — .env / .env.local / .env. precedence, parameters.yaml, services.yaml (recipe-default App\ + exclude: block), bound parameters via bind:, env-vars typed processors (%env(int:X)%, %env(json:Y)%, %env(resolve:Z)%), Symfony Vault for secrets, runtime vs build-time settings…

2 3mo ago A 133 tokens original MIT

controller-cleanup

59

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Refactor fat controllers into thin orchestrators — extract business logic to services, use #[MapRequestPayload] / #[MapQueryString] for input DTOs, dispatch to handlers via MessageBusInterface, #[IsGranted] attributes for authz, slim action methods to 5-10 lines, separate Form DTOs from entities. For API Platform…

2 3mo ago A 119 tokens original MIT

cqrs-and-handlers

60

gerard-labs/superpowers-api-platform

Skill Claude CodeCodex

Implement CQRS in Symfony — separate Command (write intent, final readonly) from Query (read intent), one #[AsMessageHandler] per command/query, dedicated buses (command.bus, query.bus) with doctrinetransaction middleware on the command side, HandledStamp::getResult() for return values. Domain Events (sync, same…

2 3mo ago A 138 tokens original MIT