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

Cms Ckeditor Bundle Laravel Package

presta/cms-ckeditor-bundle

Integrates the CKEditor WYSIWYG editor into PrestaCMS, a Symfony-based content management system. This bundle wires rich text editing into CMS pages with configurable toolbars and editor options, installed via Composer and enabled in the Symfony kernel.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit The package is not a Laravel package — it is a Symfony 2-era bundle (PrestaCMSCKEditorBundle) built for PrestaCMS, a discontinued Symfony CMS distribution. It has no service providers, no facades, no Laravel package discovery, and no Composer autoload contract compatible with a Laravel application. Its integration points are Symfony-specific: bundle registration in AppKernel, DI container configuration, Twig form themes, Assetic/asset publishing, and hard coupling to sonata-project/media-bundle and PrestaCMS page routing. Architectural fit against a Laravel codebase is effectively zero.

Integration feasibility Not feasible as a drop-in dependency in Laravel. Making use of it would require porting the CKEditor form type, the SonataMedia browsing integration, and the page-link picker into Laravel equivalents (Blade, Livewire/Inertia, a media library, and a route-aware link inserter). At that point the upstream code contributes almost nothing — the value is the idea, not the implementation. If the target is a legacy PrestaCMS/Symfony 2 estate, it is installable only against pinned PHP 5.x/7.0-era constraints.

Technical risk Very high, bordering on unacceptable:

  • Abandonment: last release 2014-09-03, repository archived, 0 dependents, 2 stars. No security patching, no PHP 8 support, no modern Symfony compatibility.
  • Transitive risk: pulls in obsolete SonataMedia/SonataAdmin and CKEditor 3/4 builds, each with their own unpatched CVEs (CKEditor 4 has had multiple XSS advisories).
  • Ecosystem drift: Assetic, AppKernel, and Resources/public asset conventions are removed or deprecated in Symfony 4+; Twig form theme syntax has changed.
  • Supply chain: archived, low-visibility packages are a poor audit signal and may be flagged by SCA tooling.

Key questions

  1. Is there an existing PrestaCMS/Symfony 2 application in the estate, or is the request for a greenfield Laravel product?
  2. Which CKEditor major version does the target UX require, and which editor features (media embed, internal page links) are genuinely needed?
  3. Is there any internal fork or patch history, or is upstream the only source?
  4. What is the security posture requirement — is any unmaintained dependency acceptable at all?
  5. Who would own a fork, and is the effort better spent on a supported editor integration?

Integration Approach

Stack fit Poor. This is Symfony 2 + Twig + Assetic + Sonata. Laravel needs a Blade/Vue/React-rendered editor with a Laravel-side upload and media endpoint. The bundle's genuine capability — a CKEditor plugin that lets authors embed SonataMedia assets and link to CMS pages via a picker — has clean modern analogues.

Migration path

  1. Do not add the dependency. Record the decision and rationale (archived, unpatched, wrong framework).
  2. Extract the requirements the bundle satisfies: rich-text editing, media library browsing/embedding, and internal page/route linking with stable URLs.
  3. Implement in Laravel with a maintained editor (CKEditor 5 via npm custom build, or TinyMCE/tiptap), spatie/laravel-medialibrary for assets, and a link-picker endpoint that resolves Laravel named routes rather than Symfony CMF page IDs.
  4. If a PrestaCMS site does exist, treat the bundle as frozen legacy: pin it, isolate the app, and plan a content migration (export pages/HTML, re-import into the new editor with rewritten media and internal links).

Compatibility Requires PHP 5.x-era runtime and Symfony 2.x components; incompatible with PHP 8.x and Laravel 8–11. CKEditor version bundled is legacy and will not share config or plugin API with CKEditor 5.

Sequencing Discovery of actual requirement → architecture decision record rejecting the package → editor and media-library selection → link-picker and upload API → content migration (if legacy data exists) → decommission. Budget one spike (1–2 days) to confirm no hidden institutional dependency on the bundle before closing it out.

Operational Impact

Maintenance Zero upstream maintenance and no realistic prospect of it. Any use implies an internal fork with full ownership of PHP upgrades, CKEditor security updates, and SonataMedia patches — a permanent tax for a UI feature that has well-supported off-the-shelf solutions.

Support No vendor, no community, 2 stars, 0 dependents. Incident triage would rest entirely on internal engineers reverse-engineering 2014 Symfony conventions. No documentation beyond the README.

Scaling Largely irrelevant — an editor integration is not a scaling bottleneck. The real scaling concern is editorial throughput and asset storage, which the modern stack handles better (CDN-backed media library, async uploads, responsive image conversions) than a 2014 Assetic pipeline.

Failure modes

  • PHP/runtime upgrade breaks the bundle and the host app together.
  • CKEditor XSS advisories with no patch path.
  • Assetic asset publishing failures on modern Symfony; broken Resources/public symlinks.
  • SonataMedia schema drift and abandoned migration chains.
  • Twig form-theme collisions with app-level templates.
  • Editor content containing legacy internal links that break when routes change.

Ramp-up Low effort to read, high effort to trust. A new engineer needs no time to learn the package (it does little) but significant时间 to establish that it is safe — and the correct conclusion is that it is not. Recommend a short ADR and immediate substitution with a maintained editor plus a Laravel-native media and link-picker service.

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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
cgv/localized-resource