ehyiah/ux-quill
Symfony UX bundle that adds a Quill.js WYSIWYG form type with minimal configuration. Works out of the box with AssetMapper, Webpack Encore, and EasyAdmin, and includes a Twig component for rendering content with or without Quill styles.
Framing note: ehyiah/ux-quill is not a Laravel package. It is a Symfony UX bundle (Twig form type + Stimulus controller + AssetMapper/Webpack Encore asset pipeline). Its value to a Laravel-centric organization is therefore either (a) direct adoption in any Symfony services we operate, or (b) a reference implementation and feature spec for a Laravel port. Any assessment that treats it as composer require-able into Laravel is wrong, and that distinction drives most of the risk below.
Architecture fit
QuillType is a drop-in replacement for TextType, and QuillAdminField covers EasyAdmin CRUD with near-zero code.symfony/ux-* and symfony/stimulus-bundle.ModuleInterface for PHP-only modules, Stimulus controller extension for JS modules) is the genuinely valuable architectural asset — it is cleanly separable from Symfony and worth copying.Integration feasibility
<twig:QuillContent> → anonymous Blade component. The Stimulus controller and module layer are the bulk of the effort; treat it as a 2–4 week build for one senior full-stack engineer, not a weekend spike.Technical risk
2.1.0 renamed path → upload_endpoint and hoisted modules to top level; 3.0.0 removed the built-in sanitizer and changed ModuleInterface. Pinning is mandatory.2.1.1 reverted dynamic JS imports due to Webpack incompatibility; 3.4.2 reworked KaTeX/highlight imports to fix Turbo race conditions. These are signs of a package still stabilizing its frontend contract.Key questions
mews/purifier), and does it live at write time, read time, or both?Stack fit
Migration path (choose one, decide in week one)
composer require ehyiah/ux-quill, pin, use QuillType/QuillAdminField. Deliverable in days.ModuleInterface abstraction — it is the part worth keeping.Compatibility
symfony/stimulus-bundle 3.0 supported as of 3.6.1; Quill JS 2.0.3.quill_content_styles() per request; Webpack path requires manual CSS imports in the entrypoint.Sequencing
QuillType, upload handler, and one JS-backed module. Produce a build-vs-buy recommendation.Maintenance
Support
ehyiah.github.io/ux-quill/, changelogs, and release notes. Documentation quality is genuinely above average for a project this size (dedicated usage guide, module docs, per-file changelogs), which materially lowers ramp-up cost.Scaling
Failure modes to monitor
Ramp-up
QuillType, two to three days to a production field with uploads, sanitization, and CSS verification. The preset system (default, minimal, custom) plus presets added in 3.7.0 keeps the options surface small.How can I help you explore Laravel packages today?