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

Bonus Laravel Relations Laravel Package

thybag/bonus-laravel-relations

Extends Laravel's Eloquent ORM with bonus relationship types beyond the built-in hasOne, hasMany, and belongsTo helpers, making it easy to define richer model associations and reuse common relation patterns without writing custom query code.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Framework upgrade planning (primary signal in 0.6.0): The release adds Laravel 13 support. If Laravel 13 is on your upgrade roadmap, this tells you the package is no longer a hard blocker — but it is the first release claiming that compatibility, so it should be validated on a branch rather than assumed.
  • Build vs. buy for data modeling: The package provides supplemental Eloquent relationship types beyond Laravel's built-ins. Before your team hand-rolls custom relation classes or raw joins for awkward schemas (through-tables, multi-hop or polymorphic associations), check whether this package already covers the case. That's a small time-saver per model, compounding across a large domain.
  • Dependency risk register entry: Version 0.6.0 with a single named contributor and pre-1.0 semver means this is a low-criticality, low-support dependency. It should not be load-bearing for core domain relationships without an internal fallback.
  • Scope/estimation input: Because it's a thin, free, community package, adopting it is a low-ceremony decision (a Composer require plus tests) rather than a procurement or architecture-review item.

Caveat: the 0.6.0 notes contain only the Laravel 13 line item. No feature, deprecation, or breaking-change detail is available, so the capability claims above are inferred from the package's stated purpose and should be confirmed against the repository README before any decision.

When to Consider This Package

Consider it when:

  • You are on Laravel and repeatedly hitting the limits of hasMany / belongsToMany / hasManyThrough for legitimate domain relationships, and you'd otherwise write bespoke relation classes.
  • You are planning or executing a Laravel 13 upgrade and need to know whether this dependency blocks you — 0.6.0 is the release that unblocks it, so upgrade this pin as part of that work.
  • The relationship is used in a bounded part of the codebase where a swap-out is cheap if the package stalls.

Look elsewhere or build in-house when:

  • The relationship is core to your domain model (billing, entitlements, permissions). Pre-1.0 semver means minor releases can break; a single-maintainer project is not a support contract.
  • You need vendor SLAs, security-response commitments, or long-term maintenance guarantees.
  • The relation you need is expressible with native Eloquent plus a well-indexed view or query scope — that's usually cheaper to own than a third-party abstraction.
  • You are on an older Laravel version and cannot absorb churn; verify the supported-version matrix in composer.json rather than relying on release notes alone.

How to Pitch It (Stakeholders)

To executives: This is a small, free, open-source add-on that saves engineering time on tricky database relationship code, and the new 0.6.0 release keeps it compatible with the latest Laravel. There is no license cost and no procurement cycle. The trade-off is that it's maintained by a very small team and hasn't reached a 1.0 stability milestone, so we'll use it selectively and keep our own tests around it — not treat it as strategic infrastructure.

To engineering: 0.6.0 is effectively a compatibility release: it adds Laravel 13 support and nothing else of note. Treat it as the minimum version to pin if we're moving to Laravel 13. Recommended handling: pin exactly, isolate usage behind repository/query objects so it's replaceable, and add characterization tests around any relationship it backs. Re-read the 0.5.1→0.6.0 diff during upgrade since pre-1.0 minor bumps carry no compatibility promise.

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.
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core