Weave Code
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

User Bundle Laravel Package

connectholland/user-bundle

Symfony 4.4/5 user bundle providing registration and login forms, user creation command, email confirmation links, password recovery, optional OAuth (Google/GitHub/Facebook), and API accessibility. Optional JWT auth via Lexik bundle.

View on GitHub
Deep Wiki
Context7

User bundle for Symfony 4 projects

Frequently asked questions about User Bundle
Can I use ConnectHolland User Bundle directly in a Laravel project without Symfony?
No, this bundle is designed for Symfony 4.4+/5.x and relies on Symfony’s core components like Doctrine ORM, Security, and API Platform. To use it in Laravel, you’d need to polyfill dependencies (e.g., symfony/http-foundation) and adapt routing, which may not be worth the effort for most Laravel projects.
What Laravel alternatives provide similar OAuth, JWT, and email confirmation features?
For Laravel, consider **laravel/sanctum** (API auth), **spatie/laravel-permission** (roles/permissions), **typhonium/laravel-jwt-auth** (JWT), and **laravel/breeze** (registration/login). These are natively Laravel-compatible without Symfony dependencies.
How do I configure OAuth (Google/GitHub) in this bundle for Laravel?
The bundle uses HWI OAuth, which isn’t Laravel-native. You’d need to install **hwi/oauth-bundle** (Symfony) and configure environment variables like `USERBUNDLE_OAUTH_GOOGLE_ID`. Laravel’s socialite packages (e.g., **laravel/socialite**) are simpler for Laravel projects.
Does this bundle support Laravel’s Eloquent ORM, or is Doctrine required?
This bundle *requires* Doctrine ORM (Symfony’s default). Laravel’s Eloquent is incompatible without a custom bridge. If you need Eloquent, look for Laravel-specific bundles like **spatie/laravel-activitylog** or **laravel/breeze** for user management.
How do I handle JWT authentication in Laravel if I adopt this bundle?
The bundle integrates with **lexik/jwt-authentication-bundle** (Symfony). For Laravel, you’d need to either: 1) Use a hybrid setup with Symfony handling `/api/auth` routes, or 2) Replace Lexik JWT with **typhonium/laravel-jwt-auth** and rewrite the auth logic to work with Laravel’s service container.
What’s the best way to test this bundle in a Laravel environment before full adoption?
Start by isolating the bundle’s API endpoints (e.g., `/api/auth`) in a Symfony micro-service or Docker container. Use Laravel’s HTTP client to test API calls. Avoid mixing Symfony’s event dispatchers or Doctrine with Laravel’s Eloquent to prevent conflicts.
Can I extend the User model in this bundle to add custom fields (e.g., profile picture)?
Yes, the bundle supports extending the User entity via Doctrine inheritance or composite entities. However, migrations and relationships (e.g., `hasMany`) may require manual adjustments. For Laravel, **laravel/breeze** or **spatie/laravel-permission** offer simpler model extensions.
How do I handle email confirmation links in Laravel if I use this bundle?
The bundle generates secure email confirmation links via Symfony’s Mailer. To integrate with Laravel, you’d need to either: 1) Use Laravel’s Mail system to send the Symfony-generated links, or 2) Rewrite the email logic in Laravel using **laravel/fortify** or **laravel/breeze** for native compatibility.
What Laravel versions are compatible with this bundle, and are there any gotchas?
This bundle is *not* Laravel-compatible by design—it targets Symfony 4.4+/5.x. Laravel 8+/9+ could theoretically use it via polyfills, but you’d face routing conflicts, service container mismatches, and missing Laravel-specific features (e.g., Blade templates). Test thoroughly in staging.
How do I migrate an existing Laravel auth system to use this bundle?
A full migration is complex: 1) Export your Laravel User model to Symfony’s Doctrine entity. 2) Reimplement auth logic (e.g., login forms) using Symfony’s Security component. 3) Redirect Laravel routes to Symfony’s endpoints. For partial adoption, consider extracting auth logic into a shared PHP library instead.
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.
filament/spatie-laravel-tags-plugin
capell-app/block-library
axium/identity
cetria/laravel-dummy-models
cetria/reflection-helper
agropredict/sso-auth-bundle
evolvestudio/spam-protection
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi