Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Lexik Jose Bridge Laravel Package

spomky-labs/lexik-jose-bridge

Integrates LexikJWTAuthenticationBundle with the Spomky-Labs JWT Framework, letting Symfony apps create and verify JWTs using JWT Framework services, key management, and configurable signing algorithms.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

  • Architecture fit: This is a thin adapter that bridges LexikJWTAuthenticationBundle (Symfony) to web-token/jwt-framework (Jose) for JWS/JWE encode/decode. It is Symfony-bundle-shaped, not Laravel-native. In a straight Laravel stack its fit is low — the idiomatic path is tymon/jwt-auth or lcobucci/jwt behind custom middleware. It becomes relevant only if we (a) already depend on web-token/jwt-framework for key management and want that surface reused, or (b) run a hybrid Laravel + Symfony kernel. Scope decision should be made before any upgrade work.
  • Integration feasibility: Mechanically trivial (composer require), but the v4 constraint set is the real work: PHP ≥8.1 and Symfony ^6.0 must be reconciled with whatever symfony/* transitive versions illuminate/* pins. Expect to spend the effort in composer why-not, not in code. No application-level code changes are indicated by the changelog.
  • Technical risk: This is a semver-major release whose only content is platform-floor raises plus tooling and docs — no features, no functional API changes announced. Functional risk is therefore low; upgrade-path risk is moderate. Two concrete exposures: Laravel 9 (PHP 8.0 floor) users cannot adopt, and teams must confirm whether v3.0.3 continues to receive security fixes for JWT-handling CVE exposure.
  • Key questions:
    1. Does v4 expose anything beyond Lexik's encoder/decoder contract, or is it a pure constraint bump?
    2. What is the exact transitive symfony/* constraint set, and does it conflict with illuminate/support / illuminate/container?
    3. What is the security-patch policy for the v3 line now that v4 requires Symfony 6?
    4. Did the underlying web-token/jwt-framework major version move alongside this?
    5. Is there a maintained Laravel-native equivalent we should standardize on instead, retiring this dependency?
    6. Bus factor: PRs #60–#66 are all from two contributors — what is the succession plan for a security-sensitive auth component?

Integration Approach

  • Stack fit: Not a fit for a pure Laravel application. Fits a Laravel app that embeds a Symfony bundle/kernel, or a shared PHP service that consumes Jose directly. If we cannot articulate which of those we are, this dependency should be scheduled for removal rather than upgraded.
  • Migration path: Composer-constraint-driven, not code-driven. Sequence: pin and inventory current v3.0.3 usage → raise runtime to PHP 8.1+ → bump symfony/* to ^6.0 → composer update spomky-labs/lexik-jose-bridge → clear container/config caches → run token round-trip and key-rotation regression. The Rector and PHPStan adoption in v4 means upstream code is now statically analyzed; our own integration tests remain the only meaningful safety net on our side.
  • Compatibility: Validate an explicit matrix rather than assuming: PHP 8.1/8.2/8.3 × Laravel 10/11 × Symfony 6.0–6.4. Laravel 9 should be documented as unsupported for this dependency. The ECS→PHP-CS-FIXER switch (PR #62) affects only upstream contribution workflow, not our runtime.
  • Sequencing: (1) Freeze v3.0.3 in production and get a written answer on its security-support horizon. (2) Upgrade PHP and web-token/jwt-framework on a branch independent of this bump. (3) Apply the v4 bridge bump. (4) Run auth regression: issuance, verification, kid selection, JWKS rotation, clock-skew handling. (5) Only then align the broader Laravel/PHP baseline. Do not bundle this with an unrelated framework upgrade.

Operational Impact

  • Maintenance: The release is unambiguously a hygiene release — static analysis, coding standards, Rector, and materially improved installation docs (PRs #65/#66). That is a positive stewardship signal and lowers the cost of the next upgrade. Counterweight: the package is small and effectively single-maintainer, which is a real bus-factor concern for an authentication-critical path.
  • Support: The effective support window moves to PHP 8.1+ / Symfony 6+. v3 is now legacy. Because this touches JWT handling, the support question is a security question, not a convenience question — treat an unclear answer as a driver to migrate off the dependency entirely.
  • Scaling: The bridge is stateless; token encode/decode adds no scaling surface. Scale is governed by key management and JWKS caching, neither of which changes here.
  • Failure modes: The realistic failure mode is dependency-resolution breakage — composer conflicts between the Symfony 6 floor and Laravel's pinned symfony/* — surfacing as a blocked upgrade rather than a runtime outage. Secondary modes: algorithm or kid mismatch after the underlying Jose upgrade, and stale serialized tokens during cutover. Given the changelog content, a silent functional regression from v4 itself is unlikely; the risk is concentrated in upgrade mechanics and in running an unsupported v3 line.
  • Ramp-up: Low. Single-purpose, well-bounded bridge, and this release improves onboarding docs. The skill the team actually needs is JWT/JWS/JWE and key-rotation literacy — not Laravel or Symfony specifics. Budget roughly a day for a mid-level engineer to be productive, plus the dependency-reconciliation effort described above.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource