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

User Bundle Laravel Package

mrdanshur/user-bundle

mrdanshur/user-bundle is a Laravel package that provides a ready-made user management layer, including authentication scaffolding, profile handling, and role-based access helpers. It aims to speed up adding users, permissions, and account features to new or existing PHP applications.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

There is a fundamental stack mismatch that dominates the evaluation. Despite being filed here as a Laravel/PHP package, mrdanshur/user-bundle is a Symfony bundle — a fork of FriendsOfSymfony/FOSUserBundle, published under the symfony-bundle package type. It integrates by registering compiler passes into Symfony's DependencyInjection container, plugging a user provider into the Symfony Security component, and wiring Doctrine ORM/ODM mappings plus Twig templates. None of those extension points exist in Laravel: Laravel bootstraps service providers, authenticates through guards and Eloquent/DB user providers, and renders Blade. A Symfony bundle cannot be "adapted" to Laravel — it can only be reimplemented.

Even in its native Symfony context, fit is weak. Upstream FOSUserBundle is itself in sunset status, superseded by maker-bundle-generated user entities plus first-party symfony/security-bundle authenticators. This fork is a 2021 snapshot of an already-declining upstream.

Integration feasibility

Composer-level feasibility is low:

  • The fork's constraints target Symfony 4.4/5.x and PHP 7.2–8.0-era components. A Laravel 10/11 app resolves Symfony 6/7 components; the solver will either hard-conflict or, worse, resolve to a stale subtree that nothing boots.
  • Installing it yields zero runtime behaviour in Laravel — no registration routes, no login form, no password reset, no user entity. The package would be dead weight plus attack surface.
  • The only viable "integration" is a manual port of the domain concepts (user manager, canonical fields, token lifecycle) into Eloquent — at which point the package contributes nothing but inspiration.

Technical risk

Authentication is the highest-consequence code in any application, and this artifact carries none of the assurance signals you require for it:

  • No adoption signal: 0 stars, 0 dependents. No peer review, no production battle-testing, no third-party audit trail.
  • Single-maintainer fork: no governance, no release cadence, last release 2021-07-23, no visible security policy or coordinated disclosure channel.
  • Unpatched inheritance: any upstream fixes after the fork point (and upstream itself has largely stopped) are absent — including Symfony 6/7 compatibility, PHP 8.2/8.3 support, and Doctrine DBAL 3/4 migrations.
  • Supply-chain exposure: an unvetted fork of security-critical code is a poor vendor; MIT license is compatible, but provenance and patch history are not verifiable from the package alone.

Key questions for the requester

  1. What is the actual target framework? If Laravel, why was a Symfony bundle shortlisted — is there a mis-filed ticket or a hidden Symfony service in the estate?
  2. Which specific capabilities are required: registration, login, password reset, profile, groups/roles, email confirmation?
  3. Are there hard constraints (existing FOSUserBundle data, canonical-field schema, groups model) that make migration non-trivial?
  4. Which Symfony and PHP versions are in scope, and is the fork required for any patch upstream lacks?
  5. Who owns security patching for this dependency if adopted?

Integration Approach

Stack fit

For Laravel, fit is nil; recommend closing the evaluation on stack grounds rather than feature grounds. Requirements map cleanly to first-party tooling:

Requirement Laravel equivalent
Registration, login, reset, email verification Laravel Fortify (headless) or Breeze/Jetstream
Profile management Simple controller + FormRequest
Groups / roles spatie/laravel-permission or native gates
Custom storage Eloquent/DB user provider (built in)

For Symfony, the successor path is the framework's own make:user entity plus a custom authenticator — not a fork of a sunset bundle.

Migration path

No direct path exists. If the underlying driver is legacy FOSUserBundle data, the realistic sequence is: keep the schema, drop the bundle, and write a thin user provider against the existing tables — in whichever framework is actually in play. This is a bounded, testable piece of work; adopting the fork merely defers it.

Compatibility

Effectively frozen at Symfony 4.4/5.x and PHP ≤8.0 semantics. Unverified against PHP 8.2/8.3, incompatible with Symfony 6/7 component constraints, and therefore incompatible with the dependency graph of any current Laravel or Symfony release.

Sequencing

  1. Confirm target framework in writing (blocking).
  2. If Laravel: record a rejection decision citing stack mismatch and abandonment status; no spike required.
  3. If Symfony exists: evaluate framework-native auth first, upstream FOSUserBundle second, this fork never.
  4. If a spike is still demanded, timebox it to a half-day composer-resolution test — it will fail fast and cheaply.
  5. Do not vendor or fork-in-place; that transfers full maintenance ownership to your team.

Operational Impact

Maintenance — You would inherit 100% of maintenance from day one: no upstream patches since 2021, no dependency bumps, no framework-version support. Every future PHP or framework upgrade becomes a manual port of auth internals.

Support — No vendor, no commercial backing, no triage activity, 0 dependents to consult. Documentation is limited to upstream's, which itself steers users away from the bundle. Internal escalation path is "the one engineer who read the source."

Scaling — Not a bundle-layer concern; the bottleneck is the user table and session/token store. Worth noting only that FOSUserBundle's model is comparatively heavy (user manager, canonical fields, group membership, event dispatchers), so it adds surface area without adding throughput.

Failure modes — The dangerous ones are silent: unpatched authentication CVEs with no advisory feed to alert you; composer resolution drift that blocks a security upgrade of a different package; opaque password-encoder configuration that complicates any future hash migration; stale reset-token semantics that fail open rather than closed. None of these surface in testing.

Ramp-up — Non-trivial cost, zero transferable value. An engineer learns Symfony bundle semantics, container wiring, and Doctrine ODM bridges to deliver functionality that Laravel's Fortify provides out of the box in an afternoon. The reimplementation cost in Laravel is lower than the learning cost of the fork.

Recommendation — Reject. The 0.1 score is consistent with the evidence: wrong framework, abandoned upstream, unvetted single-maintainer fork of security-critical code, no adoption signal. Route the underlying requirement to first-party auth tooling for the actual stack.

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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console