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

Schema Laravel Package

gosuperscript/schema

A Laravel package for building Schema.org structured data with a fluent PHP API. Generate JSON-LD for articles, products, organizations, breadcrumbs, and more, making it easy to add rich search results to your application. Clean, configurable output for SEO-friendly pages.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Correctness of user-authored expressions. v0.6.10 changes operator resolution so presence is evaluated before equality overloads. In product terms: "field is missing" and "field equals X" now resolve deterministically instead of depending on overload ordering. That's a prerequisite for any feature where users write their own conditions — saved filters, eligibility rules, alerting thresholds, feature-targeting predicates, import/validation rules over sparse payloads (optional form fields, partial JSON from third-party APIs).
  • Roadmap sequencing for expression/rule-driven features. This is a semantics fix, not a new capability. It does not unlock a new feature on its own, but it removes an ambiguity that would otherwise surface as non-reproducible bugs in anything built on top of the expression layer. Treat it as de-risking work already on the roadmap rather than a reason to add scope.
  • Build vs. buy signal. The package is 0.x with a narrow, well-defined surface (operator overloading/expression evaluation) and a single maintainer shipping frequent small patches. That profile favors buy/adopt with pinning for internal or supporting functionality, and favors build or vendor if expression evaluation sits on a revenue-critical path where you need guaranteed semantics and a support commitment.
  • Behavioral change management, not migration management. No new APIs, no deprecations, no breaking changes are declared. However, expressions that previously resolved equality first may now resolve differently in edge cases. The PM action is to inventory persisted expressions (database rows, config, customer-authored rules) and confirm none depended on the old ordering.
  • Vendor/maintenance health tracking. A rapid patch cadence (0.6.9 → 0.6.10 with a single focused fix) is a positive maintenance signal; the very short changelog text and absent upgrade notes are a mild negative signal for a dependency you'd want audited. Keep this on the dependency-review list at each minor bump.

When to Consider This Package

Adopt when:

  • You need operator overloading or a compact expression/evaluation layer in a Laravel/PHP codebase, and presence-vs-equality distinction genuinely matters to your domain (sparse data, optional fields, "not set" vs. "explicitly null" vs. "set to a value").
  • The expression layer is supporting infrastructure — internal tooling, admin-authored rules, non-customer-facing configuration — where a bug is recoverable.
  • You can pin an exact version in composer.json and gate upgrades behind your own regression suite covering operator precedence and null/presence semantics.
  • You're comfortable with a 0.x contract: minor bumps may carry semantic changes, and the changelog may not spell them out. Budget for reading diffs, not just release notes.

Look elsewhere (or vendor the code) when:

  • Expression semantics are customer-facing and contractual — pricing, billing, entitlement, compliance decisions — where an ordering change is a silent correctness incident.
  • You require a stable public API, a deprecation policy, LTS guarantees, or a named support channel. 0.x plus a single maintainer does not provide these.
  • Your actual need is ordinary query building or validation; Laravel's query builder, validation rules, or a mature rules engine will be cheaper to own than a pre-1.0 abstraction.
  • You cannot invest in characterization tests around this dependency — in that case the ordering change in v0.6.10 is exactly the kind of silent behavior shift you'd be unable to detect.

How to Pitch It (Stakeholders)

For executives: This is a small, low-cost open-source dependency that handles expression/rule evaluation in our Laravel stack. The new patch (v0.6.10) is a correctness fix, not a feature: it makes the evaluation order between "field present" and "field equals value" predictable. No new spend, no migration project, no user-visible feature. The residual risk is that the package is pre-1.0 with one maintainer, so we pin the version and treat upgrades as reviewed changes rather than routine updates.

For engineering: v0.6.10 resolves presence checks ahead of equality overloads, removing an ordering ambiguity. No API changes or deprecations. Required actions: pin to 0.6.10, add or extend tests that assert presence-vs-equality behavior for null, missing, and empty values, and audit any persisted expressions or stored rules for reliance on the previous resolution order. If you observe a behavior change in an existing expression, treat it as a bug in the expression, not a regression in the package — and capture it as a test case before upgrading further.

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.
skyraptor/chatter
edlugz/sasapay
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