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

Ckeditor Widget Laravel Package

victoire/ckeditor-widget

victoire/ckeditor-widget adds CKEditor widget support to Victoire, letting developers register and render custom editor widgets with minimal configuration. It extends rich-text editing with reusable, configurable widget components.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. The first thing to flag is a framing mismatch: despite the "Laravel/PHP package" label, victoire/ckeditor-widget is a Symfony bundle, not a Laravel package. It is a presentation-layer plugin for Victoire, a widget-driven CMS built on Symfony 2/3. Its role is narrow — it registers CKEditor as an editable content widget inside Victoire's page-builder surface. There is no service provider, no Laravel integration point, and no dependency-injection contract that a Laravel application could consume idiomatically. For a Laravel codebase, "architecture fit" is effectively zero unless the surrounding stack is Symfony + Victoire, which is itself a dormant ecosystem.

Integration feasibility. Low. The package is a leaf node with a hard dependency on Victoire core and on the Victoire widget registration contracts of that era. Adoption requires standing up Victoire, which in turn pins an old Symfony minor line, an old PHP runtime (PHP 5.6/7.0-era constraints are typical of a 2017 release), and CKEditor 4. You are not integrating one package; you are adopting a CMS generation.

Technical risk. High and largely unmitigable without forking:

  • Abandonment. Last release 2017-06-21 — roughly eight years without a commit-level maintenance signal. Two stars and zero dependents confirm no community backstop.
  • Security surface. CKEditor 4 is end-of-life and has a public history of XSS and content-sanitization advisories. A WYSIWYG widget is a high-trust, user-authored-content ingress point; running an unpatched editor there is a material risk, not a theoretical one.
  • Runtime drift. Composer resolution against modern PHP (8.2+) and current Symfony is unlikely to succeed without constraint surgery; transitive dependency conflicts are probable rather than possible.
  • Bus factor. Single-vendor, small-team provenance. If it breaks, the only remediation path is in-house ownership of the fork.

Key questions for the requester.

  1. Is the target stack actually Laravel, or is this inherited from a Symfony/Victoire codebase? The answer changes the recommendation from "reject" to "contain and migrate."
  2. What is the concrete requirement — a rich-text field, or full Victoire-style widget composition? These have very different replacement costs.
  3. Is there existing content authored through this widget that must be preserved, and in what storage format (HTML blob, structured widget JSON)?
  4. Who owns security patching for user-generated HTML in the target product, and is that owner aware they would be inheriting CKEditor 4?

Integration Approach

Stack fit. Poor. Treat this as a non-adoption for greenfield Laravel work. The correct architectural read is that the capability (a WYSIWYG editing surface) is commodity, while the package is an artifact of one specific CMS. Buy the capability from a maintained source; do not buy the artifact.

Migration path. Two viable routes depending on the answer to the stack question:

  • Greenfield / Laravel: drop this dependency entirely. Use a maintained editor with first-party Laravel-adjacent tooling — CKEditor 5 (with its own licensing consideration), Tiptap, or a TipTap/ProseMirror-based field paired with server-side HTML sanitization. The integration is a front-end component plus a sanitize-on-write boundary; it does not warrant a CMS plugin.
  • Legacy Victoire in place: contain rather than extend. Pin the package at its existing commit, isolate it behind a thin internal adapter so the editor can be swapped without touching content models, and schedule replacement. Do not attempt to modernize the bundle in place — you would be maintaining a fork of an abandoned CMS plugin to keep an EOL editor alive.

Compatibility. Assume PHP 7.x, Symfony 2.8/3.x, and CKEditor 4 as the supported envelope. Verify empirically before any commitment: attempt a Composer install against the actual target runtime and record the failure mode. A clean resolution against your production constraints would be surprising; a wall of conflicts is the expected result and is itself the decision input.

Sequencing. (1) Confirm the true host stack. (2) If Laravel: no integration, close the ticket with a replacement recommendation. (3) If Victoire: inventory existing widget-authored content and its serialization format. (4) Build the adapter seam. (5) Select and pilot a replacement editor on the highest-traffic content type. (6) Migrate content, then decommission.

Operational Impact

Maintenance. Effectively unmaintained upstream. Any operational posture here is "we own it," which means budgeting for a fork, a dependency-vendoring strategy, and periodic manual review of CKEditor 4 advisories — work with no external payoff and no upstream to upstream it to.

Support. None. No vendor, no active maintainer, no issue-triage signal, no security advisory channel through the package. Escalation paths terminate internally.

Scaling. The editor itself is a client-side concern and is not the throughput bottleneck; the meaningful scaling risk is server-side HTML sanitization and storage of large user-authored documents. Those are solvable independently of this package, which further argues for decoupling the capability from the artifact. The real scaling constraint is organizational: the pool of engineers who know Victoire's widget model is small and shrinking.

Failure modes.

  • Composer resolution failure on any PHP/Symfony upgrade — blocks platform modernization, not just this feature.
  • Silent content corruption across editor versions when migrating authored HTML.
  • Stored XSS via unpatched CKEditor 4 or inadequate server-side sanitization.
  • Transitive dependency abandonment cascading into unrelated parts of the build.
  • Knowledge loss: no one on the team can debug the widget registration path.

Ramp-up. High relative to value. Onboarding requires Victoire domain knowledge (page-builder widget lifecycle, its content model) plus Symfony 2/3 idioms that are increasingly unfamiliar to current hires. Estimate days-to-weeks for a competent engineer to reach safe-modification confidence — for a text-editing field that any modern framework ships in an afternoon.

Recommendation. Decline adoption. The package scores 0.1 for defensible reasons: abandoned since 2017, negligible adoption, EOL editor, wrong framework for the stated context. The capability is commodity and should be sourced from a maintained provider; the only legitimate use of this repository is as a reference for migrating content off it.

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.
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus