Download the PHP package rahmanramsi/livewire-page-group without Composer
On this page you can find all versions of the php package rahmanramsi/livewire-page-group. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rahmanramsi/livewire-page-group
More information about rahmanramsi/livewire-page-group
Files in rahmanramsi/livewire-page-group
Package livewire-page-group
Short Description a simple way to group your livewire full pages
License MIT
Homepage https://github.com/rahmanramsi/livewire-page-group
Informations about the package livewire-page-group
Livewire Page Group
This package groups class-based, full-page Livewire components behind a shared domain, URL prefix, layout, middleware stack, and boot callback.
Requirements
- PHP
^8.1 - Laravel 10, 11, 12, or 13
- Livewire
^3.8or^4.1
Livewire is installed as a runtime dependency. Composer selects a compatible release from ^3.8 || ^4.1, so applications constrained to Livewire 3 can stay on that line while applications such as Filament 5 projects can resolve Livewire 4.
Installation
Install the package with Composer:
Getting Started
Create a service provider for each page group and register it with your application providers:
The example creates these route name prefixes:
Use domain(null) or omit domain() when the group should respond on every host. The path() value is the URL prefix. Group middleware applies to the home page, discovered pages, explicit pages, and custom routes. Pass true as the second argument to middleware() when those middleware should also be persistent across Livewire requests.
The configured layout must accept the Blade $slot. It also receives the mounted component as $livewire, which allows a layout to render the page title:
Pages
Pages extend Rahmanramsi\LivewirePageGroup\Pages\Page:
Explicit pages are registered with pages([...]). discoverPages($directory, $namespace) discovers non-abstract Page subclasses from an autoloadable namespace. Set protected static bool $isDiscovered = false on a page to exclude it from discovery.
The package uses Route::get($uri, ComponentClass::class) for its class-based full-page components. This form works on both supported Livewire lines. Livewire-specific component registration is isolated behind a compatibility layer so component aliases remain stable across Livewire 3 and 4.
Single-file and multi-file Livewire 4 components are not discovered as page-group pages. Page-group pages remain class-based subclasses of Rahmanramsi\LivewirePageGroup\Pages\Page.
Page Generator
Generate a class and its Blade view for a registered group:
The command uses the group's first discovered directory and namespace. If more than one is configured, it prompts for the destination. Existing class or view files are not overwritten unless --force is supplied.
Changelog
Please see CHANGELOG for more information on what has changed recently.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Rahman Ramsi
- Filament for inspiration
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of livewire-page-group with dependencies
livewire/livewire Version ^3.8 || ^4.1
php Version ^8.1
spatie/laravel-package-tools Version ^1.93.1