Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Simplecms Bundle Laravel Package

ibrows/simplecms-bundle

iBrows SimpleCMS Bundle is a Symfony bundle for adding lightweight content management to your application, with simple page and content handling so editors can manage site text without a full CMS.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. ibrows/simplecms-bundle is a Symfony bundle, not a Laravel package — this is the defining fact for a TPM assessing it against a Laravel roadmap. It assumes Symfony's bundle contract: a Bundle class registered in config/bundles.php, a DependencyInjection/*Extension.php for config/services, Doctrine entity mappings, Twig templates, and Sonata Admin wiring (per the Laravel dev assessment). None of these map onto Laravel's service-provider container, Eloquent, Blade, or Filament/Nova. The fit against a Laravel codebase is therefore zero as a dependency and moderate as prior art: the pages + content-blocks domain model and the editorial UX patterns visible in the admin templates are the only genuinely reusable assets, and both are reproducible cheaply.

Integration feasibility. Not an installation — a port. The realistic workstreams are (1) Doctrine entities → Eloquent models and migrations, (2) Symfony Forms/Sonata Admin → Filament or equivalent, (3) Twig + Twig extensions → Blade, (4) DI extension → service providers. The package is Symfony 2-era, so expect PSR-0 autoloading, annotation readers, and PHP 5.x/@Route/@ORM conventions that will not resolve against PHP 8 + Laravel 10/11. A spike should confirm the Composer resolve fails rather than assume it.

Technical risk. High and asymmetric:

  • Abandonment: 0 stars, 0 dependents, no maintainer — adopting means becoming the sole maintainer of a decade-old codebase.
  • License: NOASSERTION is a stop-the-line item. No recognized grant means default all-rights-reserved; commercial use and derivative works are ambiguous until legal clears it. This alone gates any path beyond reading the source.
  • Security: Unpinned Symfony 2-era transitive dependencies with no patch path — a scan finding we cannot remediate without a fork we own.
  • Scope: "Simple CMS" likely lacks versioning, draft/publish workflow, localization, and RBAC; discovering that mid-build forces scope expansion.

Key questions.

  1. What is the actual requirement — marketing pages, reusable content blocks, or structured editorial content? A narrow pages+blocks need is ~1–2 weeks of native Laravel work.
  2. Is our intent adopt, fork/port, or reference-only? Reference-only sidesteps both the license and maintenance exposure.
  3. Has legal ruled on NOASSERTION? If not, this is out of scope by default.
  4. Is there an incumbent CMS decision (Statamic, Filament + custom, Twill) this duplicates or conflicts with?
  5. Target Laravel/PHP version and confirm nothing survives a Composer resolve against it.

Integration Approach

Stack fit. None out of the box. The bundle assumes Symfony full-stack; our stack assumes Laravel. Treat the value as the schema — page/block entity relationships and the content-element concept — plus the demonstrated editorial pattern, both readable in an afternoon.

Migration path. Four options, ranked by TPM preference:

  1. Reject and build native (recommended). Eloquent pagess + polymorphic blocks, admin via Filament, render via Blade. Lowest total cost, no license exposure, no fork tax.
  2. Reference-only. Extract the schema and feature list, discard the code. Removes license and maintenance risk almost entirely; note reading to extract a model still carries residual derivative-work questions if the license is unresolved.
  3. Sidecar. Run the bundle in its own Symfony 2 container, consume over HTTP/DB from Laravel. Preserves code but inherits every operational and security liability — only defensible if the CMS must ship this quarter and the surface is read-mostly.
  4. Full fork and port. 3–6 weeks of engineering plus permanent fork maintenance. Justified only if the bundle holds non-trivial logic we cannot cheaply reproduce (unlikely).

Compatibility. Assume breakage: PSR-0 autoloading, annotation readers, Symfony Form API changes, Twig 1.x syntax/extensions, PHP-version-gated code. Expect dependency resolution failure on first composer require in a modern Laravel app.

Sequencing.

  1. Day 1–2 — spike. Attempt install on target PHP; inventory entities, routes, admin features. Output: feature list + LOC estimate.
  2. Day 3 — license gate. Legal sign-off or hard stop.
  3. Week 1 — decision. Build-vs-port with cost estimates; default to build.
  4. Week 2–3 — schema + models. Migrations, Eloquent relations, seed data.
  5. Week 3–4 — admin. Filament resources for pages/blocks, media, draft/publish.
  6. Week 4–5 — frontend + parity. Blade rendering, caching, redirects/SEO fields.

Operational Impact

Maintenance. The dominant cost. With no upstream, every bug fix, dependency bump, and CVE patch is ours; a forked Symfony 2 bundle carries permanent framework-version debt that never tracks modern PHP. Effective burden is "own a small framework," not "consume a library."

Support. No vendor, no active maintainer, no community, thin documentation (README-class), no changelog or upgrade guide to draw on. Internal support means one or two engineers reverse-engineering old code. Bus factor is 1 by construction.

Scaling. Unverified. Symfony 2-era CMS code commonly renders blocks with per-block queries (N+1) and lacks response caching; plan an explicit cache keyed on page + block revision and load-test before traffic commitments. Read-heavy public pages will be fine behind a cache; the low-volume admin write path is not a concern.

Failure modes.

  • Composer resolve failure on modern PHP — likely, and the first thing the spike should test.
  • Transitive CVE exposure with no remediation path; a security finding we cannot close without a fork.
  • License challenge post-production (M&A diligence, customer contract, redistribution) — the most expensive outcome, since remediation is a rewrite under pressure.
  • Silent data-model gaps (versioning, workflow, localization) discovered mid-build, forcing scope expansion.
  • Knowledge evaporation when the engineer who ported it leaves.

Ramp-up. High and non-compounding: engineers must learn Symfony 2 idioms (bundle DI, annotations, Form types) with no transferable value to the Laravel roadmap. Domain ramp-up is fast; code ramp-up is slow.

Recommendation. Do not adopt as a dependency for a Laravel stack. Use it as a schema and UX reference only, contingent on legal clearing NOASSERTION. The expected cost of a native Laravel build for pages + blocks (~1–2 weeks) is below porting (~3–6 weeks) plus perpetual fork tax, and it eliminates license and security exposure entirely. If a CMS is genuinely on the roadmap, evaluate maintained Laravel-native options (Statamic, Filament-based, Twill) rather than a dormant Symfony 2 artifact.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings