soyhuce / livewire-component-auto-register
Auto-register Livewire components outside base namespace
Fund package maintenance!
soyhuce
Requires
- php: ^8.4
- composer/class-map-generator: ^1.5.0
- illuminate/contracts: ^11.0|^12.0
- livewire/livewire: ^3.5
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.
- larastan/larastan: ^3.0
- nunomaduro/collision: ^8.1.1
- orchestra/testbench: ^9.0|^10.0
- pestphp/pest: ^3.0
- pestphp/pest-plugin-arch: ^3.0
- pestphp/pest-plugin-laravel: ^3.0
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: ^2.0
This package is auto-updated.
Last update: 2025-07-16 18:58:12 UTC
README
Auto-register Livewire components outside base namespace
Livewire only supports having one root namespace for your components. This package allows you to automatically register components outside the base namespace.
Installation
You can install the package via composer:
composer require soyhuce/livewire-component-auto-register
You can publish the config file with:
php artisan vendor:publish --tag="livewire-component-auto-register-config"
Usage
In the config/livewire-component-auto-register.php
file, you can specify the namespaces you want to register components from.
'paths' => [ 'Support\\Livewire' => base_path('app/Support/Livewire'), ],
From now, all components in the app/Support/Livewire
namespace will be automatically registered and be usable in your views.
For example, if you have a component app/Support/Livewire/ProgressBar.php
, you can use it in your views like this:
<livewire:progress-bar />
Optimize discovery for production
Component discovery can be cached using the livewire-component-auto-register:cache
command.
php artisan livewire-component-auto-register:cache
Cache can be cleared using the livewire-component-auto-register:clear
command.
php artisan livewire-component-auto-register:clear
Commands are registered as optimization command inside Laravel, meaning that php artisan optimize
and php artisan optimize:clear
will automatically run them.
Generate IDE Helper file
Sometimes, your IDE may not be able to resolve the components correctly (particularly Laravel IDEA plugin). You can generate a helper file using the livewire-component-auto-register:ide-helper
command.
php artisan livewire-component-auto-register:ide-helper
You can configure ide-helper file path in the configuration file.
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
License
The MIT License (MIT). Please see License File for more information.