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

Lexical Bundle Laravel Package

flexible-ux/lexical-bundle

The Flexible UX Lexical Bundle brings the Lexical rich text editor to Laravel applications, offering ready-to-use editor components, seamless content handling, and a smooth authoring experience for admin interfaces and CMS pages alike.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for rich-text authoring. Rich-text editors are a recurring, deceptively expensive feature (paste handling, sanitization, formatting toolbars, accessibility, XSS surface). This package collapses the integration into a Symfony Form Type, letting you treat "add a rich-text field" as a configuration decision rather than a multi-week build. Framed correctly, you are not buying an editor — you are buying the glue between your form layer and Meta's MIT-licensed Lexical editor.
  • Scope of the "authoring" roadmap item. If your roadmap has CMS pages, blog posts, help-center articles, product descriptions, comment/compose fields, internal notes, or email drafting in the admin back-office, this is a candidate implementation path. It supports committing to a rich-text capability with a smaller estimate than a hand-rolled integration.
  • Frontend architecture direction. Because it is wired with AssetMapper + Stimulus, adopting it is also a vote for the "no Node build step" Symfony UX path. That is a strategic decision (simpler ops, fewer supply-chain surfaces) that extends well beyond this one feature — worth deciding deliberately rather than inheriting by accident.
  • Feature-flag / pilot posture. With 9 stars and 0 dependents, the low-risk PM move is to run this behind a flag on one internal surface (e.g., admin-only authoring) and measure authoring speed, support tickets, and content-formatting defects before expanding to customer-facing fields.
  • Vendor-vs-fork decision. The realistic framing for planning is "adopt as a starting point we own," not "adopt as a supported third-party dependency." That changes the estimate: budget a small maintenance allowance and a fork/vendor step, not a procurement or license review.

Important scoping caveat: this is a Symfony bundle, not a Laravel package. It depends on the Symfony Form component, AssetMapper, Stimulus (Symfony UX), and UX Icons — none of which exist in a standard Laravel application (Laravel uses Blade/Livewire/Inertia and Vite). If your product is on Laravel, this package is not adoptable; it is at best a reference implementation for how to wire Lexical into a server-rendered form. The only Laravel-relevant decision it informs is "what does a clean Laravel equivalent look like."

When to Consider This Package

Consider it when all of the following hold:

  • Your application is Symfony 6.4/7.x and already uses, or is actively standardizing on, the Symfony UX stack (AssetMapper + Stimulus + UX Icons). If you are on Webpack Encore or Vite, you lose most of the value and will be doing manual asset wiring anyway.
  • Your editor requirements fit Lexical's model: structured rich text, extensibility via custom nodes/plugins, optional collaboration via Yjs. Lexical is a strong choice when you need to extend the editor (mentions, custom blocks, tables) rather than just get a toolbar.
  • You are comfortable owning the code: vendoring or forking, reading the source, and absorbing upstream drift. Assume no support contract, no security-response process, and no community answers at 9 stars / 0 dependents.
  • You need server-side form integration — validation, data mapping, persistence — and want to stay in Symfony's Form/Validator world rather than introducing an SPA or a JS-only editor contract.

Look elsewhere when:

  • You are on Laravel. Use a JS-first editor (TipTap/ProseMirror, Lexical directly, or a Livewire-compatible editor component) and integrate it yourself.
  • You need a mature, supported WYSIWYG today. TinyMCE, CKEditor 5, or a hosted editor gives you commercial support, hardened accessibility, paste-from-Word handling, file uploads, and i18n out of the box. This package gives you a field type, not those features.
  • Nobody on the team can own a JS-adjacent frontend dependency. A near-zero-adoption PHP bundle around a fast-moving JS library is a maintenance liability for a team that only does backend.
  • You need proof before commitment. With no dependents, no visible test/CI/adoption story, and a single-digit star count, treat it as unproven until you've read the source, checked Symfony version constraints, confirmed how Lexical is delivered via importmap (CDN vs. vendored), and validated XSS/sanitization behavior in your own environment.

How to Pitch It (Stakeholders)

For executives: Rich-text editing is a small-sounding feature that reliably eats engineering time. This package is an MIT-licensed Symfony form type that wires Meta's Lexical editor into our existing form layer with no Node build step and no license cost — a candidate to cut the initial estimate for authoring features and to avoid vendor lock-in on a commercial editor. The honest caveat: it is very early-stage (9 stars, no known dependents), so the recommendation is a time-boxed pilot on an internal surface, not a platform commitment, with a modest budget to vendor and maintain the code ourselves.

For engineering: It gives us a FormType that renders a Lexical editor via AssetMapper importmap and a Stimulus controller, with icons from UX Icons — meaning validation, data mapping, and persistence stay in normal Symfony Form territory, no SPA, no separate API contract. The trade-off is that the value is concentrated in the glue code, which is small enough to read and fork; the real dependency is Lexical itself. Spike ask: confirm Symfony version compatibility, inspect how Lexical is delivered, verify sanitization/XSS handling on submitted HTML, and assess what we'd own if upstream goes quiet.

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.
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
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