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

Relationship Field Type Laravel Package

anomaly/relationship-field_type

Anomaly Relationship Field Type provides a Laravel/Streams form field for selecting and linking related entries across streams. It adds relationship input handling to Anomaly control panels, making it easy to connect records through a simple field.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

  • Architecture fit: This is not a general-purpose Laravel package; it is a field type addon for the Anomaly Labs Streams Platform / PyroCMS 3.x ecosystem. It plugs into Streams field assignments and depends on Streams field type contracts, addon registration, and repository patterns. It fits only if the product is already committed to PyroCMS/Streams; it has little to no value in a vanilla Laravel application.
  • Integration feasibility: Feasible as a Composer addon in a Streams-based app: install, register the addon, define a stream field using the relationship field type, and validate entry selection behavior. The code surface is likely small, but the dependency chain is legacy and must be checked against the application’s PHP, Laravel, and Streams versions.
  • Technical risk: High relative to value. The package has 1 star, 0 dependents, and a low score (0.455), which signals an unproven, niche addon with minimal community validation. Likely risks include stale framework constraints, limited maintenance, dropdown scalability on large related streams, and unclear authorization/validation behavior.
  • Key questions: Which PyroCMS/Streams version is targeted? What PHP/Laravel constraints are declared? Is the repository actively maintained? Does the dropdown respect stream permissions and unpublished entries? How are large option sets handled? What happens when a related entry is deleted? Can we fork and own it under MIT if needed?

Integration Approach

  • Stack fit: Adopt only for a PyroCMS 3 / Streams Platform application. Do not introduce Streams solely to gain a related-entry dropdown; in a standard Laravel app, a native Eloquent relation select or an admin-panel field (Nova, Filament, etc.) is a better fit.
  • Migration path: In a sandbox branch, require the package via Composer, verify addon discovery/registration, create a test stream with the relationship field, run schema changes, and exercise create/read/update/delete flows. If the app is not already on Streams, treat this as a build-versus-buy signal to build a small internal field instead.
  • Compatibility: Pin the package and platform versions. Review composer.json constraints, abandoned dependencies, and autoload behavior. Test against the exact PHP/Laravel/Streams matrix in use. If constraints conflict, fork under the organization’s namespace rather than patching vendor/.
  • Sequencing: 1) Confirm platform version and addon registration model; 2) spike the field type in a disposable stream; 3) validate permissions, validation, and API writes; 4) load-test dropdown behavior with realistic related-entry volumes; 5) decide adopt/fork/replace; 6) if adopted, add integration tests and lockfile pinning before production use.

Operational Impact

  • Maintenance: Expect low upstream activity and single-maintainer risk. MIT licensing allows a fork, but the team must budget ownership for compatibility patches, security review, and Streams upgrades. Add dependency monitoring and periodic smoke tests.
  • Support: Likely community-only with no vendor SLA. Create an internal runbook covering field type configuration, related-stream schema changes, and data cleanup when relations are removed.
  • Scaling: The dropdown may enumerate related entries, creating slow control-panel forms and large payloads on big streams. Require limits, search/pagination, or an AJAX-backed select for non-trivial datasets, plus indexes on the related stream’s display/filter columns.
  • Failure modes: Missing or renamed related streams, deleted related entries, stale cached options, permission leakage of unpublished entries, validation bypass on API writes, addon not registered after deploy, and Composer conflicts. Add null handling, authorization checks, and end-to-end tests around these paths.
  • Ramp-up: A Streams-experienced developer can spike this in days; a Laravel-only team will need ramp-up on Streams addon lifecycle, field type registration, and PyroCMS admin patterns. Given the adoption signals, default to a time-boxed evaluation with a clear replace-or-fork exit criterion.
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.
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator