web-feet/coastercms
Coaster CMS is a Laravel-based content management system with a flexible page builder, reusable blocks, media management, user permissions, and multi-language support, making it easy to build and manage custom websites.
Architecture fit
/admin route namespace and UI, its own users/roles/permissions model, its own migrations, and a Blade theme layer under resources/views/themes driven by a block-based content model.Integration feasibility
composer require web-feet/coastercms, php artisan coaster:install, publish assets, write a theme. Days, not weeks. The constraint now resolves to Laravel 8 / PHP 7.3–8.1 rather than Laravel 6/7.str_*/array_* helper removal (Laravel 9), Flysystem v1→v3 storage APIs and PHP 8.1 floor (Laravel 10), Symfony major bumps and PHP 8.2 floor (Laravel 11+), plus dynamic-property and Doctrine DBAL signature changes along the way. Revise the estimate from 3–6 engineer-weeks down to roughly 2–4, plus indefinite ownership. It is still fork-maintenance work, not integration work.LICENSE file at the v8.0.0 tag is still GPL-3.0. GPL-3.0 is viral on distribution. Internal use and a hosted SaaS generally do not trigger source-disclosure obligations, but shipping a proprietary on-prem product that embeds Coaster does. Most corporate OSS policies will reject GPL-3.0 in a product dependency outright. Get legal sign-off before any engineering spend.Technical risk
composer.lock — including the admin panel's file-upload and rich-text editor dependencies — remain unpatched unless this release demonstrably refreshed them, which the note does not claim; (2) GPL-3.0 distribution risk, unchanged; (3) one release in roughly four years is not a maintenance cadence — a single version bump does not create a patch flow, and ecosystem pressure-testing remains near zero; (4) vendor/bus-factor risk unchanged — small shop, no visible commercial support or SLA, no stated commitment to a next release; (5) content lock-in via a bespoke block table plus serialized block settings, unchanged; (6) themes still depend on internal View/Blade conventions that are the first thing to break on framework upgrades; (7) new: a major-version jump with no changelog, no upgrade guide, and no test-matrix disclosure means the delta is unverified — you cannot distinguish "careful framework port" from "constraint bump plus the minimum edits to boot."Key questions
composer.lock, and confirmed the block/content schema is stable?Stack fit
Migration path
Compatibility
laravel/framework to the 8.x line and the PHP minor exactly, commit the lockfile, and forbid composer update in CI for this app./{slug} route collision with host routes; admin auth colliding with an existing users table and role system; media disk configuration against your existing S3/object-storage conventions; session/cookie domain overlap if served on a subdomain.Sequencing
composer.json and composer.lock changes, confirm LICENSE is unchanged, and check whether a CI/test matrix is actually exercised. This is a half-day and it determines whether the rest of the plan is real.composer.lock — both are go/no-go, before engineering. The EOL framework baseline means the triage will surface findings; decide in advance what your tolerance is.Verdict: the release improves the entry economics and removes the "abandoned since 2020" objection in form, but not in substance. Still adopt only as an isolated, pinned, marketing-only satellite with legal sign-off and a funded exit plan — and only after diffing the tag to confirm what v8.0.0 actually contains. If the target must run a supported framework, the correct move is now the fork path, starting from Laravel 8. Otherwise — and this remains the default — do not adopt; evaluate maintained Laravel-native alternatives (Statamic, Twill, Filament-based admin) that carry current framework support and permissive licenses.
Maintenance
Support
Scaling
Failure modes
Ramp-up
How can I help you explore Laravel packages today?