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

Laravel Shortcode Plus Laravel Package

murdercode/laravel-shortcode-plus

A Laravel package for parsing shortcodes inside content, with support for attributes and custom handlers. Register your own shortcodes, then render them in Blade views or user-generated text to keep templates clean and content flexible without hardcoding markup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for shortcode parsing: adopting this package replaces a bespoke [tag]…[/tag] parser (regex edge cases, nesting, attribute quoting, escaping) with a maintained dependency. A PM decision to adopt is primarily a buy decision that removes a small but chronically bug-prone subsystem from the roadmap.
  • Content-authoring autonomy: shortcodes let non-developers embed dynamic fragments (buttons, embeds, product cards, CTA blocks) inside stored rich text without a deploy. This directly supports roadmap items like "marketing can edit landing pages," "CMS-lite admin," and "email/notification templates with variable content."
  • Feature scoping: because rendering logic lives in PHP classes registered with the container, product can ship new embeddable blocks as discrete, testable units rather than as Blade partials with duplicated data-fetching. Useful when sizing "add N new content blocks" epics.
  • Architecture decision — where rendering happens: the package renders server-side at output time, which suits server-rendered Blade and API-serialized content. If the roadmap includes a rich client-side editor (Tiptap/Slate/ProseMirror) or headless multi-consumer content, shortcode syntax becomes a cross-renderer contract and needs an explicit spec, not just package defaults.
  • Release signal (v5.3.1): a patch bump on the 5.3 line implies no public API breakage and no migration work. No deprecations or breaking changes are signaled; treat as a low-risk dependency bump suitable for routine upgrade cadence rather than a roadmap-level event. Note the release note is only a diff link with no enumerated changes — confirm the diff before pinning in a regulated environment.

When to Consider This Package

Consider adopting when:

  • You persist user- or editor-authored content that must mix prose with dynamic, app-aware fragments (product listings, prices, user-specific CTAs).
  • The team is Laravel-native, already comfortable with service providers, config publishing, and Blade — the package's mental model matches the framework.
  • You want shortcode definitions to be first-class PHP classes that can be unit-tested, rather than string-replaced in templates.
  • Content is rendered server-side and the same content is not simultaneously consumed by independent client-side renderers.
  • You need WordPress-style syntax familiarity for migrating content or for editors trained on that convention.

Look elsewhere when:

  • The content model is already structured (blocks, JSON schema, a page builder). Shortcodes are a text-embedding mechanism and will fight a structured editor.
  • You need the same markup rendered identically in a JS frontend and a PHP backend — the parsing semantics then belong to a shared spec, not a single-language library.
  • Requirements include rich WYSIWYG preview, drag-and-drop composition, or per-block scheduling/permissions; this is a rendering primitive, not a CMS.
  • Security posture demands a formally audited dependency with a published disclosure process; a single-maintainer package warrants an internal review before it touches publicly editable content.
  • The need is a one-off: a single token substitution in one template is cheaper inline than a dependency plus its upgrade cadence.

How to Pitch It (Stakeholders)

To executives: This is a small, mature open-source library that lets non-engineers drop dynamic blocks into written content without engineering involvement. The business case is velocity and reduced engineering interruption — content changes stop being tickets. Cost is a dependency, not a license; the risk is maintainer concentration, mitigated by a thin integration layer that keeps our content portable. Latest release (v5.3.1) is a patch — no migration, no breaking changes, no budget impact.

To engineering: Server-side shortcode registry mapping [tag attr="…"]…[/tag] to invokable classes resolved from the container. Fits Blade rendering and testable content pipelines; keeps parsing, attribute handling, and nesting out of our codebase. Integration surface should be kept narrow — wrap registration behind our own service so the dependency is swappable and so shortcode syntax is defined once for any future non-PHP renderer. Upgrade path from 5.3.0 to 5.3.1 is a patch bump; verify the diff, then bump within normal dependency cadence. Add coverage around any shortcodes rendered from user-editable fields, since output escaping and authorization inside shortcode handlers are ours to own, not the package's.

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.
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package