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

Nova Prepopulate Searchable Laravel Package

alexbowers/nova-prepopulate-searchable

A Laravel Nova package that lets you prepopulate searchable relationship fields from URL query parameters, making it easier to create records with preselected BelongsTo values from links or filtered lists.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Closing a known UX gap in admin/ops tooling. Laravel Nova's BelongsTo searchable fields are empty on page load — the currently-linked record isn't shown until someone types a search. This package pre-populates the field with the existing related record so editors can see what's already assigned before changing it. That's a small feature, but it directly affects a high-frequency workflow in any back-office app.
  • Reducing mis-assignment errors. When a form shows a blank "Customer" or "Account" field even though one is attached, operators either (a) assume nothing is linked and re-link the wrong record, or (b) waste time searching to confirm the current value. Pre-population removes both failure modes. If you have support tickets like "the wrong owner got reassigned," this is a candidate fix.
  • Build vs. buy (and here, "neither — vendoring"). The package is MIT-licensed and tiny. The realistic decision isn't "adopt vs. build a competitor," it's "vendor a ~100-line fix vs. write it ourselves vs. do nothing." Given the archived status, treat it as reference implementation, not a dependency.
  • Roadmap input on internal admin tooling. This surfaces a broader question worth putting on the roadmap: how much of your ops UI quality is dependent on unmaintained third-party Nova extensions? If the answer is "a lot," that's a platform risk item, not a feature item.
  • Use cases where this matters: assigning a support ticket to an existing assignee, editing an order's customer, reassigning a CRM record owner, any admin edit form where a BelongsTo relation is searchable-by-default and correctness of the existing link matters.

When to Consider This Package

Consider it (as source material, not a dependency) when:

  • You are on Laravel Nova 3.x and pinned there — the last release is February 2022, which predates Nova 4, so compatibility with Nova 4/5 is unverified and should be assumed broken until proven otherwise.
  • You're already paying the Nova license and can't easily override field behavior through official extension points.
  • You have a small number of BelongsTo searchable fields where the blank-on-load behavior is genuinely causing operator errors.
  • You're comfortable vendoring the code into your app, pinning it, and owning it — MIT + archived means forking is the intended path, not an edge case.

Look elsewhere / don't adopt when:

  • You're on Nova 4 or 5. An archived package with a 2022 release is not a safe bet against Nova's internal field APIs. Verify against your exact Nova version or don't start.
  • You want a maintained dependency. Archived + 37 stars + no recent releases means no security patches, no framework-version updates, and no upstream support. Your team absorbs all of that.
  • The fix can live in your own field class. If your team already has custom Nova fields or resource tooling, a local BelongsTo subclass is likely cheaper than integrating and maintaining a fork.
  • You can change the UX instead. Sometimes the right product answer is to make the relation non-searchable, add a separate read-only "currently assigned" display, or show the value in the index table where operators actually look. That may solve the problem without touching field internals.
  • You're evaluating this for a client deliverable with long-term support expectations. Archived packages raise a legitimate "who maintains this in 18 months?" objection during handoff.

Adoption hygiene if you do proceed: vendor it, add a comment block naming the upstream commit you copied from, write a regression test asserting the pre-populated value renders, and add a calendar reminder to re-evaluate whenever you upgrade Nova.

How to Pitch It (Stakeholders)

For executives — one paragraph:

This is a small, free, MIT-licensed add-on for our admin panel that fixes a specific usability defect: edit screens currently show an empty field where an existing assignment should appear, which causes operators to re-search unnecessarily and occasionally re-assign the wrong record. It's a low-cost, low-risk improvement — but the original author has archived it, so we'd copy roughly a hundred lines into our own codebase rather than depend on it. Recommendation: adopt the behavior, not the package. No license cost, a few hours of engineering time, and we own the maintenance.

For engineering — the ask:

Nova's searchable BelongsTo fields don't display the currently-attached record on load. This package (archived, last release Feb 2022, MIT) demonstrates the fix. Don't add it as a Composer dependency — vendor or reimplement it locally, confirm it works against our Nova version, and add a test covering the "existing relation is visible before searching" case. If the reimplementation exceeds a day, escalate: that's a signal our Nova customization layer needs attention, not that we should fight this.

Risks to state plainly in the pitch:

  • Archived upstream, ~3.5 years since last release, low adoption (37 stars) — assume zero support.
  • Built against Nova 3-era internals; Nova 4/5 compatibility unverified.
  • Mitigated by: MIT license, small code surface, local vendoring, and a test that fails loudly on Nova upgrades.
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