laulamanapps/tokenable-symfony
Symfony bundle for token-based authentication: generate, hash, and manage API tokens for users or any Doctrine entity. Includes configurable expiration, scopes, and simple integration with Symfony security, offering a lightweight Sanctum-style token solution for PHP applications.
Caveat: this baseline is derived solely from the v2.0.3 release notes. Confirm the capability list against the package README before circulating.
#[Tokenable] entity attribute, encoded URLs, and a |token Twig filter. That is a narrow, well-bounded utility — the classic "don't build this yourself" case. The value is in the security-sensitive encoding path being maintained by someone else, not in the feature surface.#[Tokenable] attributes, JOINED/single-table inheritance, Twig filters, a profiler panel — are Symfony/Doctrine idioms, not Laravel ones. If the roadmap is Laravel-first, this is a conditional buy at best: expect integration glue (Eloquent equivalents of Doctrine inheritance, Blade instead of Twig) or a second implementation. This is the single biggest decision the notes support.#[Tokenable] from an abstract Doctrine base. If your domain model uses a shared base entity (common in mature codebases), the package was previously misreporting collisions — false positives, not false negatives. That means adopters were getting noise, not silent breakage. Correct signal, but it justifies validating the profiler against your own entity graph before trusting it in a support workflow.Adopt when:
#[Tokenable]-attributed entities.Look elsewhere or build thin when:
|token and the Inbound/Classes panels cover the gap (the notes say they are unchanged) before committing.^2.0 blindly.To executives: A small, focused dependency that handles security-sensitive token encoding for us rather than us maintaining it. Latest patch fixes a real defect that was producing misleading "collision" warnings for teams with shared base entities, and trims a developer-only debugging panel to reduce the package's maintenance surface. No production behavior changed; token generation and the Twig filter are untouched. Risk is low and contained.
To engineering: v2.0.3 is a patch that (1) fixes false-positive "Triplet collides" / "Prefix already used" profiler errors by validating only classes that declare #[Tokenable], mirroring the Tokenizer — so the profiler and Tokenizer now agree, which matters if you use abstract-base (JOINED / single-table) inheritance; and (2) removes the profiler's "Generated URLs" panel and its recording hook. Action items: verify the profiler stops flagging your inherited entities, and drop any internal docs or screenshots referencing the Generated URLs panel. The |token filter, URL token encoding, and the Inbound/Classes panels are unchanged — no migration needed. Flag upstream that a panel removal shipped in a patch version, so we should read changelogs rather than assume ^2.0 is inert.
How can I help you explore Laravel packages today?