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 Ajax Select Laravel Package

dillingham/nova-ajax-select

A Laravel Nova field that swaps the default select for an AJAX-powered searchable dropdown, so users can quickly find records in large related resource sets as they type. Works with belongsTo, belongsToMany, and morphTo relationships, with support for custom search columns and query constraints.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Admin tooling performance trade-off. This package replaces a pre-loaded Nova dropdown with an AJAX typeahead, so forms referencing high-cardinality data (customers, tenants, SKUs, accounts) stay responsive instead of shipping thousands of <option> tags. The decision: do we invest in admin form performance for large option sets, and is that worth an external dependency?
  • Build vs. buy on internal tooling. It substitutes roughly 1–2 developer-days of custom Nova field work with an MIT-licensed drop-in and no vendor cost. That frees scarce engineering time for product features rather than bespoke admin controls.
  • Roadmap for internal/ops tooling. Supports a strategy of extending Nova rather than standing up bespoke admin panels. Relevant anywhere the roadmap includes self-serve ops tooling, admin-managed reference data, or forms that must query data behind an API or separate service.
  • Freshness vs. responsiveness on dynamic reference data. Useful beyond the "too many rows" case — plans, CRM-synced accounts, feature flags — where a cached preload would go stale. The AJAX round-trip buys freshness; the product call is whether a network dependency on every keystroke is acceptable for that form.
  • Scope boundaries to set explicitly. This is a single-value typeahead. Tag-style multi-select, dependent fields, and server-side grouping are a separate build — don't stretch this field to fit.
  • What it does not inform: customer-facing roadmap, pricing, or core architecture. This is a productivity lever scoped to internal admin teams.

When to Consider This Package

Consider adoption when:

  • You have already standardized on Laravel Nova (paid license) with no near-term plan to migrate the admin layer.
  • You have a specific form field whose options are too large, too dynamic, or too remote for Nova's built-in select or searchable BelongsTo.
  • You have completed a compatibility spike against your installed Nova/PHP versions. The last release is August 2020 (v1.0.4) and predates Nova 4's Vue 3 rebuild — treat Nova 3.x as the happy path, Nova 4/5 as a spike.
  • You are willing to own a fork. MIT, tiny surface area, zero dependents: forking is cheap if upstream stays quiet.
  • Blast radius is low: internal admin only, with authorization and tenant scoping audited on the search endpoint.
  • You can pin 1.0.4 rather than float — earlier tags fail when a field has no resolvable parent() context.

Look elsewhere when:

  • You need a maintained dependency with an upgrade cadence or security-response expectations.
  • You are on Nova 4/5 and unwilling to patch or vendor the field.
  • Native Nova searchable selects already cover it — benchmark on the same Resource before keeping the dependency.
  • You are not on Nova; the package is not portable to Filament, Backpack, or another admin layer.
  • Your requirement is genuinely exotic (paginated multi-select with tagging, server-side grouping) — you'd be rewriting it anyway.

How to Pitch It (Stakeholders)

Executives: A free, MIT-licensed accelerator for internal admin tooling. It saves roughly one to two developer-days versus building a custom Nova field, adds no vendor cost, and carries no lock-in. The honest caveat: it's an 86-star community package last released in August 2020, so we treat it as adopt-and-own — we accept responsibility for keeping it working — not buy-and-forget. Recommendation: a single-form pilot, behind a flag, with a fork contingency and a revisit at the next Nova major upgrade.

Engineering: It's a Nova custom field that swaps a static select for an AJAX search endpoint. Integration is small — install, pin 1.0.4, register it on one Resource, confirm it mounts and saves against our Nova/PHP combination. Zero dependents means no ecosystem risk but also no maintenance signal, so budget a short spike, a mount-specific smoke test (Nova 4/5 failures are silent), and a regression test around the field. Before production: enforce Nova resource authorization and per-user/tenant scoping on the search query, verify the searched columns are indexed, rate-limit the endpoint, and add latency/error logging from day one. Ship behind a per-Resource flag with the old field retained so rollback is a config flip. If a future Nova upgrade breaks it, we vendor or fork — MIT keeps that path cheap.

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