pugx/shortid-doctrine-bundle
Symfony bundle that integrates PugX ShortId with Doctrine ORM, giving entities short, unique, human-friendly identifiers generated automatically on persist. Ideal for clean URLs and readable public IDs.
pugx/shortid library — it supplies a Doctrine ID generator plus bundle config (alphabet, length, custom generator service). Buying here means near-zero code to own; building means writing and maintaining a Doctrine ID generator yourself./orders/1..N materially harder — a product-security decision, not just a cosmetic one.Adopt when:
Look elsewhere when:
symfony/uid (UUIDv7/ULID) instead.On this specific release: v1.3.1 is a patch containing one Symfony 8 deprecation fix (PR #19). No new features, no breaking changes, no API changes. No re-assessment of fit is triggered — only a routine dependency bump.
To executives: We're standardizing how public identifiers look and behave. This is a small, single-purpose dependency that lets us use short, non-guessable IDs in customer-facing URLs and reference codes instead of exposing sequential database IDs — reducing enumeration and scraping risk at effectively no engineering cost. The just-released v1.3.1 is a maintenance patch that keeps it compatible with Symfony 8, so it will not block our framework upgrade. Risk is low and contained: it's a thin wrapper, and swapping it out later is a localized change.
To engineering: One config block (pugx_shortid) plus an entity annotation/attribute swaps the Doctrine ID generator; IDs are generated in PHP, so no schema or sequence migration is needed to adopt it. v1.3.1 is patch-level — a Symfony 8 deprecation fix only, no behavior change, safe to take in a routine bump. Two things to confirm before we commit: collision handling under our expected write volume, and that we're happy to live with non-sortable PKs (they hurt B-tree locality on high-insert tables). And note the scope: this is Symfony-only — it is not a candidate for our Laravel services.
How can I help you explore Laravel packages today?