- How do I install flobbos/page-composer in a Laravel application?
- Install the package with Composer using composer require flobbos/page-composer. Then run php artisan page-composer:install to generate the required database schema and setup files. Publish the package assets and configuration with php artisan vendor:publish, selecting the PageComposerServiceProvider. You must also publish and configure the TranslatableDB package for translations.
- What Laravel, Livewire, and PHP versions does PageComposer require?
- PageComposer requires Laravel 13 or higher, Livewire 4, and PHP 8.3 or higher. These are hard requirements, so teams still on Laravel 10 through 12 or Livewire 3 will need to upgrade before adopting the package. The 2.x line also introduces breaking changes from 1.x related to Livewire 4 features.
- Does flobbos/page-composer support multi-language content?
- Yes, PageComposer supports multi-language content through the flobbos/translatable-db dependency. After publishing the TranslatableDB configuration, set the language_model option to Flobbos\PageComposer\Models\Language so translations load correctly. This makes it suitable for global or localized marketing sites that need translated page content.
- Do I need Tailwind CSS to use PageComposer?
- PageComposer is built with Tailwind CSS and its views expect Tailwind utility classes to be available. You must include the package views in your Tailwind scan paths so the required classes are generated. Column presets and width classes are Tailwind-oriented, which fits projects already using Tailwind but requires setup for other CSS frameworks.
- Can I create custom elements in PageComposer?
- Yes, PageComposer uses an element-based system that lets developers build custom components such as widgets or dynamic forms. Custom elements integrate into the same Livewire editor experience used for built-in text, photo, and video elements. You may need manual migration adjustments when adding custom fields beyond the default schema.
- How does PageComposer structure page content?
- Content is divided into rows and columns that contain elements chosen by the editor. This row-column-element model provides flexible drag-and-drop layout editing without full page reloads because it uses Livewire reactivity. The package stores available space values for rows and provides a command to recalculate them if column layouts change.
- How do I upgrade PageComposer from 1.x to 2.x?
- Upgrading to 2.x requires Laravel 13, Livewire 4, and PHP 8.3 or higher. The drag-and-drop system was rewritten using Livewire 4 wire:sort, so custom sortable components may need refactoring. The Quill editor component was renamed from quillEditor to pageComposerEditor, so published views that reference the old name must be updated.
- Is flobbos/page-composer production-ready and actively maintained?
- The package has very limited community validation, with zero stars and zero dependents reported in the assessment. There are no strong active development signals such as frequent GitHub activity or issue responses, so long-term maintenance is a risk. Teams should evaluate it carefully, test thoroughly, and have a rollback or migration plan before using it in production.
- What alternatives to PageComposer should I consider for Laravel CMS needs?
- Alternatives include Laravel Nova, Filament, or a headless CMS such as Strapi combined with Laravel. The best fit depends on whether you need drag-and-drop page layout editing, multi-language content, or complex workflows like approvals and versioning. PageComposer is best suited to marketing sites and content-heavy pages where its row-column-element editor adds value.
- How do I fix stale row available_space values in PageComposer?
- Run php artisan page-composer:sync-row-space to recalculate available space values for existing content. You can preview changes without writing to the database by adding the --dry-run flag. This is useful after changing column layouts or when you suspect stored available_space values are out of date.