murdercode/nova4-tinymce-editor
TinyMCE editor field for Laravel Nova 4. Adds a full-featured WYSIWYG field to your Nova resources with configurable toolbars, image and media support, and easy customization, making it a drop-in upgrade over the default textarea field.
Build-vs-buy for rich-text authoring in the admin. murdercode/nova4-tinymce-editor is a pre-built Laravel Nova 4 field that swaps a plain textarea for a full TinyMCE WYSIWYG editor — configurable toolbars, media embeds, dark mode, and (as of v2.0.3) an image/file upload route. For a team that would otherwise spend engineering cycles wiring TinyMCE into Nova, this is a credible "buy" (well, Composer-install) decision on a common, undifferentiated capability. There is no case for building the baseline editor in-house.
Roadmap acceleration for CMS-style admin features. If near-term roadmap items include blog bodies, product descriptions, docs pages, landing-page copy, or any operator-facing rich content, this field lets those ship without a dedicated editor project. Content is stored as plain HTML in an ordinary Eloquent text/longText column — no new data model, no new service, no bespoke persistence layer. That is a low-coupling way to unblock content-heavy features and keep the roadmap moving while larger bets are in flight.
Scope framing: tactical accelerator, not platform component. Treat adoption as a point solution inside a Nova admin surface — not a decision about the content platform, media strategy, or DAM. Making that explicit with stakeholders up front prevents scope creep into asset libraries, transformations, and CDN orchestration, none of which this package addresses.
A new owned responsibility: the upload surface. v2.0.3 enables an upload API route, which moves the package from "editor widget" to "editor plus an application file-upload endpoint." That is a real product decision, not a patch note: the team now owns authentication, authorization, MIME/size validation, filename safety, storage disk choice, and rate limiting on that route. PMs should scope and resource this as part of adoption, not as an afterthought discovered in security review.
Risk tolerance and pilot gating. Low adoption signal (17 stars, 0 dependents), a single primary maintainer, MIT license, and community-only support make this a candidate for a gated pilot rather than a broad rollout. That directly shapes the go/no-go structure: non-production spike → security review of the upload route → staging with failure-path testing → production with a warm rollback to v2.0.2 → monitoring.
Deciding where it is explicitly not the answer. The package is a poor fit for customer-facing, regulated, high-security, or high-volume media pipelines. That is itself a useful product decision: it tells PMs to reserve this for internal admin authoring and plan a different path for customer-facing media, asset libraries, or multi-tenant content platforms.
Sequencing visible UX against security work. The editor is the quick win; the upload route is the long tail. PMs should sequence the visible feature (formatted text, links, inline images) as the near-term deliverable and treat upload hardening as a parallel gating workstream that must clear review before any production exposure.
Strong fit when:
Look elsewhere when:
For executives. This is a low-cost, open-source accelerator that lets us ship rich-text content editing and simple image uploads in our Nova admin without a custom build. It unblocks CMS-style roadmap items — blog and page content, product descriptions, documentation — for internal operators, using a plain HTML column that adds no new data model or infrastructure. The trade-offs are honest: community-maintained, a single primary maintainer, low adoption, and a latest release that adds an application upload endpoint we now own and must secure. Recommendation: a time-boxed pilot with a security review of the upload route and a documented rollback before broader rollout. Treat it as a tactical accelerator for internal admin tooling, not a strategic platform decision.
For engineering. Integration is straightforward on a Nova 4 app: composer require, register the field on a resource, publish config if disk/MIME/toolbar defaults need centralizing, and run storage:link. The editor stores plain HTML, so validation stays in field rules() and sanitization stays in the render pipeline. The real work — and the risk — is the v2.0.3 upload route: review it as a security change, not a patch bump. Confirm it sits behind Nova's auth guard, that authorization (including per-tenant where relevant) is enforced, and that MIME type, size caps, filename handling, storage disk, and rate limiting are validated server-side rather than only in the TinyMCE init. Verify whether config/assets need republishing, and remove any base64 or custom images_upload_handler workarounds to avoid double-handling uploads. Pin v2.0.3, confirm compatibility with the app's Nova, Laravel, PHP, and TinyMCE versions, and test the failure paths (oversized file, wrong MIME, misconfigured disk) in staging. Instrument upload error rates and editor asset loading after each deploy, keep the v2.0.2 rollback warm, and document the route, storage policy, and rollback procedure for support and on-call. Budget the security review into the plan — it is the long pole, not the editor.
How can I help you explore Laravel packages today?