crumbls/layup
Layup is a Laravel package for building dynamic, reusable page layouts. It provides a clean API for defining sections and rendering them in Blade, helping you keep page structure organized, flexible, and easy to maintain. Ideal for CMS-driven sites and admin panels, with minimal boilerplate.
Architecture fit. crumbls/layup is a Filament 5 / Livewire 4 package that layers page-template management onto Laravel applications. It fits the common pattern of a Filament-backed admin panel where content editors create pages from either built-in templates or saved custom templates. v1.7.0 is a patch release that corrects template resolution at page-creation time — the selected template's content is now materialized when the page is created, rather than yielding an empty page. This is a correctness fix in the core authoring workflow, not an architectural change.
Integration feasibility. Low friction. The release explicitly states no migrations, asset rebuilds, or configuration changes are required. Upgrade path is a standard composer update crumbls/layup --with-dependencies, and dependency constraints are unchanged, so the resolution graph should not shift. Integration effort is therefore confined to regression verification of the page-creation flow rather than any deployment or schema work.
Technical risk. Overall low for this specific release, with three caveats:
Key questions.
Stack fit. The package assumes a Laravel application running Filament 5 and Livewire 4. It is not a standalone CMS; it augments a Filament panel with page authoring and templating. That makes it a good fit where Filament is already the admin surface and a poor fit where content editing lives elsewhere or where pages are authored headlessly. Confirm Filament 5 adoption status before scoping — if the host application is still on Filament 3 or 4, this release is not adoptable regardless of its merits.
Migration path. Straightforward: update the constraint in composer.json, run composer update crumbls/layup --with-dependencies, and deploy. No artisan migrate, no npm run build, no config publish. Do this in a staging environment first, then exercise the creation flow manually against each built-in template plus at least one saved custom template before promoting.
Compatibility. Dependency constraints are unchanged, which materially reduces the chance of collateral version churn. The principal compatibility surface is Filament 5 and Livewire 4 themselves; verify those are pinned to versions the package supports rather than floating to latest. The "no config changes" claim should still be validated against our published config file, if one exists, since published configs are not overwritten by Composer.
Sequencing.
Maintenance. Low ongoing burden. The package is actively maintained — a reported issue (#78) was fixed and shipped with linked PR (#79), and the release notes document the reproduction and regression coverage. The suite reports 1,239 tests and 3,930 assertions, plus documentation lint and PHP formatting checks, which indicates CI discipline beyond the typical package of this size. Budget roughly a half-day of engineering per upgrade cycle for verification, not code changes.
Support. Upstream support is via GitHub issues on Crumbls/layup. There is no indication of commercial support or an SLA. Internal ownership should sit with the team that owns the Filament admin panel, and the package should be tracked in the dependency register with an assigned owner. Given the narrow maintainer footprint typical of packages at this scale, treat bus-factor as a standing risk and keep the integration thin so it can be replaced.
Scaling. No meaningful scaling implications. Template resolution happens at page-creation time and is a per-request operation; there is no new background processing, queue usage, cache layer, or storage backend introduced. Load characteristics are unchanged from v1.6.2. The only scaling-adjacent concern is data quality: the more pages created under the defective version, the larger the remediation surface, so the inventory step above scales with authoring velocity.
Failure modes.
Ramp-up. Minimal. The new documentation covers the New Page template workflow and corrects the landing-page template slug in examples, so onboarding material is improving rather than degrading. A developer familiar with Filament resources should be productive with this package in under a day; the conceptual model — built-in templates versus saved custom templates, resolved at creation — is small and now better documented. The primary onboarding task is not the API but the semantics: understanding that template binding is a creation-time decision, not a live reference.
How can I help you explore Laravel packages today?