internachi / modular-livewire
Livewire plugin for internachi/modular
0.0.1-beta.1
2026-05-12 17:32 UTC
Requires
- php: >=8.3
- illuminate/support: ^11|^12|^13|dev-master|dev-main
- internachi/modular: ^3.0
- livewire/livewire: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.34
- orchestra/testbench: ^9.11|^10.0|^11.0|dev-master|dev-main
- phpunit/phpunit: ^10.5|^11.5|^12.5|^13.0
This package is auto-updated.
Last update: 2026-05-12 20:04:19 UTC
README
Modular Livewire
Livewire plugin for internachi/modular. Automatically discovers and registers Livewire components from your application modules.
Requirements
- PHP 8.3+
- Laravel 11+
internachi/modular^3.0livewire/livewire^3.0
Installation
composer require internachi/modular-livewire
That's it. The package auto-registers its service provider and plugin via Laravel's package discovery.
How It Works
This package registers a plugin with internachi/modular's plugin architecture that automatically discovers Livewire components inside your modules. It scans for PHP files in each module's src/Livewire/ directory and registers them with Livewire.
Component Discovery
Place your Livewire components in src/Livewire/ within any module:
app-modules/
├── billing/
│ └── src/
│ └── Livewire/
│ ├── InvoiceTable.php → billing::invoice-table
│ └── Reports/
│ └── MonthlySummary.php → billing::reports.monthly-summary
└── users/
└── src/
└── Livewire/
└── UserProfile.php → users::user-profile
Naming Convention
Components are registered with the format {module-name}::{component-name}:
- Class names are converted to kebab-case
- Subdirectories use dot notation
- The module name prefix comes from the module's directory name
Usage in Blade
<livewire:billing::invoice-table /> <livewire:billing::reports.monthly-summary /> <livewire:users::user-profile />