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

Statamic Bard Mutator Laravel Package

jacksleight/statamic-bard-mutator

Statamic Bard Mutator lets you transform Bard field content before it's rendered. Define mutators to modify ProseMirror nodes and marks, adding attributes, rewriting links, or adjusting markup, so rich text output stays clean and consistent without custom fieldtype work.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

  • The package is a Laravel/PHP add-on whose compatibility surface is tied to Statamic, the Laravel-based CMS. Its architecture is therefore only as stable as the Statamic addon contract it sits on (tags, fieldtypes, modifiers, CP views, Antlers/navigation APIs).
  • Release 3.0.5 adds Statamic 6 support. This is a compatibility expansion, not a new capability: the package's own public API and integration points are unchanged. From an architecture standpoint this is a widening of the supported host matrix, not a re-architecture.
  • Implication for us: the integration risk profile does not change for existing Statamic 5 installs, but a second supported host version doubles the configuration surface we must validate against.

Integration feasibility

  • Low effort for current consumers: a patch bump to 3.0.5 should be a drop-in for teams already on Statamic 5. Confirm the composer.json constraint is an OR-range (e.g. ^5.0|^6.0) rather than a hard bump — if the latter, 3.0.5 silently drops Statamic 5 support and is breaking despite the patch number.
  • Higher effort for teams moving to Statamic 6, which is a major CMS upgrade in its own right (Laravel/PHP floors, control panel changes). The package is a dependency of that project, not the driver of it.

Technical risk

  • Medium-low. Three specific concerns:
    1. Constraint resolution risk — if our lockfile/composer constraints are permissive, a routine composer update could pull Statamic 6 unintentionally. Pin explicitly.
    2. Dual-support test surface — a patch release claiming two major host versions likely has an asymmetric test matrix. Features exercised only on Statamic 5 may degrade silently on 6.
    3. Semver discipline signal — new host-major support is conventionally a minor (3.1.0), not a patch. Not a blocker, but it tells us the maintainers treat compatibility additions as non-events, so we should read changelogs rather than trust version numbers.
  • Risk is not in the package's own behavior — nothing in the note indicates deprecations, removed APIs, or config changes.

Key questions

  • Does 3.0.5 support Statamic 5 and 6 concurrently, or did the constraint replace 5 with 6?
  • What is the minimum PHP and Laravel version for the Statamic 6 path, and does that differ from the Statamic 5 path?
  • Is Statamic 5 still in the support window for the 3.x line, and for how long?
  • Which Statamic 6 control-panel/API changes required code changes in this package, and are any features degraded on 6?
  • Is there a published CI matrix showing both hosts green?

Integration Approach

Stack fit

  • Fits cleanly if we are on Statamic 5 or planning Statamic 6 — the package is now positioned across the current and next major of the host. Any team blocked on "this addon isn't Statamic 6 ready" has that blocker removed.
  • No new infrastructure, service, or runtime dependency is implied by the note.

Migration path

  • Statamic 5 → stay: bump to 3.0.5 with the constraint pinned to the Statamic 5 range; treat as a routine patch, standard regression pass only.
  • Statamic 5 → 6: treat as a platform upgrade project, not a package upgrade. Sequence: PHP/Laravel floors → Statamic 6 core → this package 3.0.5 → remaining addons. This package is unlikely to be the long pole.
  • Statamic 6 greenfield: adopt directly, but ask for the CI matrix since there is no field history on the 6 path.

Compatibility

  • Verify PHP and Laravel minimums for each host branch before committing; a major CMS bump typically moves both.
  • Audit for other addons in the same install — the Statamic 6 readiness of this package does not imply readiness of its neighbors, and mixed-readiness is the most common upgrade stall.

Sequencing

  1. Read the actual composer.json constraint in 3.0.5 to determine dual-support vs. replacement.
  2. If dual: pin and ship the patch to Statamic 5 environments immediately — near-zero risk.
  3. If replacement: hold 3.0.5 until the Statamic 6 upgrade is scheduled; do not let it float.
  4. Run the Statamic 6 upgrade in a branch with a full addon smoke test (CP views, fieldtypes, tags, front-end rendering).
  5. Promote to staging, then production, with a documented rollback to the last known-good lockfile.

Operational Impact

Maintenance

  • Ongoing cost is a two-version support matrix: two host versions to patch, two sets of regression tests, two upgrade cadences. Budget for this in any "we support both" claim.
  • Minimal churn otherwise — no deprecations to remediate, no config migrations noted.

Support

  • Support burden shifts in kind rather than volume: expect "works on 5, broken on 6" tickets that require reproducing across hosts. Capture the host version and PHP version in any bug template from day one.
  • Escalation to the maintainer is only credible if we can cite the specific host version and the failing integration point.

Scaling

  • No scaling implications from this change — it is a compatibility declaration, not a performance or capacity change.
  • The scaling concern is team scaling: every additional supported host version multiplies the environments our QA and on-call must hold in their heads.

Failure modes

  • Silent constraint drift: un-pinned Composer constraints resolve to Statamic 6 during a routine update; failures surface as confusing runtime errors rather than a failed install.
  • Asymmetric degradation: a feature works on Statamic 5 and fails quietly on 6 (or vice versa) because only one branch is exercised in CI.
  • Cascading upgrade block: we move to 3.0.5 assuming it unblocks Statamic 6, then get stuck on an unrelated addon.
  • Support-window surprise: Statamic 5 support is dropped in a later patch of the 3.x line with the same low-ceremony release style.

Ramp-up

  • Low learning cost — nothing new to learn to use the package. The real ramp-up is on the Statamic 6 side (CP changes, Laravel/PHP floors) and applies to the whole team, not just this dependency.
  • Recommend a short internal note capturing: supported host versions, PHP/Laravel floors per branch, and the pinned constraint — so the next engineer doesn't have to reverse-engineer it from composer.lock.
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.
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels