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

Nova Markdown Laravel Package

stepanenko3/nova-markdown

stepanenko3/nova-markdown provides a Markdown editor field for Laravel Nova, letting you write and preview Markdown content directly inside Nova resource forms. It stores plain Markdown and integrates cleanly with your existing Nova admin panel and models.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Admin authoring investment. Frames a bounded upgrade to the internal editing experience inside Laravel Nova — internal docs, blog drafts, FAQs, knowledge-base entries — swapping a raw textarea for a split-view Markdown editor with live preview. This is a productivity enhancement, not a differentiator, and should be scoped and budgeted as such.
  • Build vs. buy (the real call). The honest comparison is not "this package vs. nothing," but "this package vs. a thin in-house Nova field wrapping a maintained editor (EasyMDE or Toast UI)" — roughly 1–2 engineer-days. At 10 stars, 0 dependents, and a last release in September 2023, building in-house is a legitimate contender, not a fallback. Default to build unless a half-day audit clearly favors the package.
  • Content-format strategy. Because content persists as plain Markdown in an existing TEXT/LONGTEXT column, adoption reinforces a deliberate vendor-neutral storage decision. Encode "never introduce a proprietary JSON or block schema" as a hard constraint so a future contributor cannot create lock-in. Rendering remains a separate, app-owned, server-side concern.
  • Editor UX direction (Markdown vs. WYSIWYG). Forces an explicit decision about who the author is. Technical writers get a split-pane Markdown surface; marketing, support, or other non-technical editors almost certainly need WYSIWYG or a dedicated CMS. This is a staffing and product decision, not just a tooling one — no amount of configuration fixes the wrong author/editor pairing.
  • Roadmap prioritization. Classify as an internal productivity enhancement and time-box it. Do not let any roadmap dependency form on a single-maintainer, 2023-era package. The correct planning artifact is a pilot ticket, not a platform initiative.
  • Media/upload scoping. Decide up front whether image or file uploads are in scope. If the field exposes them, they can bypass your storage abstraction, ACLs, and lifecycle rules — the easy default answer is "no," keeping the media pipeline where it belongs.
  • Risk-acceptance decision. At 10 stars, 0 dependents, one maintainer, and a stale release, adoption is a decision to own the code. That is fundable only with a named owner, pinned versions, a documented revert-to-textarea path, and a recurring Nova-upgrade allowance that lands on the same calendar as Nova upgrades.

When to Consider This Package

Consider it when:

  • You already run Laravel Nova (paid, separately versioned) and need Markdown authoring for a small set of internal, technical users.
  • Requirements are simple: edit, toolbar, live preview, plain-text storage — no collaboration, approvals, media workflows, or enterprise support.
  • You can accept MIT with no SLA and are prepared to audit, vendor, or fork the code.
  • A 0.5-day audit confirms (a) the package's composer.json constraint on laravel/nova matches your pinned major today and across your upgrade roadmap, and (b) the live-preview HTML is sanitized, or app-layer sanitization is enforceable on your read path.
  • The value is speed of implementation and improved admin UX — realistically under half a day for a Nova-fluent developer.

Look elsewhere when:

  • You are not on Laravel + Nova (Filament, Blade, Livewire, Inertia, standalone admin panels: zero fit).
  • The requirement is Markdown rendering for end users — a separate server-side concern this package does not address.
  • Content is public-facing, regulated, security-sensitive, or business-critical, or you need accessibility guarantees.
  • You need active maintenance, vendor support, security response, media workflows, or multi-user collaboration.
  • Non-technical editors are the primary users (WYSIWYG or a CMS fits better).
  • You cannot tolerate a 2023-era constraint set against current Nova/Laravel/PHP without staging validation — including the asset-publish step, where custom fields most often break silently.
  • The in-house alternative really is 1–2 engineer-days. At this package's adoption level, that is a genuine competitor rather than a fallback.

How to Pitch It (Stakeholders)

Executive summary. A small MIT-licensed field that adds a Markdown editor with live preview to Laravel Nova admin screens. It is a low-cost, low-strategic-value productivity add-on — not a platform bet. Approve only a time-boxed pilot (audit + spike + one sprint) on a non-critical internal workflow, with a named owner and a pre-approved rollback to the default textarea. The downside is bounded: content is stored as plain Markdown, so there is no data migration and no lock-in. If the pilot does not end with a rendered, sanitized page from a real Nova resource, the fallback is a thin in-house field — days, not quarters.

Engineering summary. It is a presentation-layer Nova field: a PHP field class plus pre-compiled Vue assets that store raw Markdown and render a client-side preview. Treat the README as a starting point and src/ as the spec — verify the namespace, the fluent option methods, and whether assets ship pre-built or require a Node build. Two implementation rules carry the risk: never render the preview's HTML in production (own the read path through Str::markdown() or league/commonmark with html_input => 'strip' and allow_unsafe_links => false, behind a single renderer service), and never mount the editor on index views (use a cheap read-only column instead). Pin Nova and the field to exact-ish constraints, run nova:publish in the deploy pipeline rather than only locally, and put a config-gated swap back to Textarea::make() in the runbook before the pilot starts. Assume we are the maintainer: budget review time on every Nova major upgrade.

One-line framing for the steering conversation. "A weekend-sized admin UX improvement with a documented exit, gated behind a half-day audit — approve the pilot, not the dependency."

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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console