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 Google Autocomplete Laravel Package

yieldstudio/nova-google-autocomplete

A Laravel Nova field that adds Google Places autocomplete to address inputs, letting editors search and select real addresses as they type. Optionally store place details such as coordinates and address components alongside the field. Requires a Google Places API key.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for address entry in admin tooling. If the product already runs Laravel Nova and operators type addresses into back-office forms, this package collapses "Google Places autocomplete + Nova field integration" into a single field declaration. That is the cheapest possible datapoint for the build-vs-buy question — but only for internal, Nova-only forms. It does not answer the same question for customer-facing checkout.
  • Scoping a data-quality initiative. The value proposition is narrow and measurable: fewer free-typed, malformed addresses in CRM records, billing/shipping contacts, venues, or field-ops sites. Treat it as one tactic inside a "reduce operator data-entry errors" effort rather than a justification for a broader forms or address-management redesign.
  • Privacy and data-minimization trade-offs. Version 1.3.0's dontStore() gives you transient lookups without persistence — genuinely useful for privacy-sensitive or "verify only" flows. But it ships with a documented limitation: address preview and clear do not work in that mode. That is a product constraint to design around (label it clearly in the UI copy) or a disqualifier for workflows where operators must review and amend a stored address.
  • Roadmap risk posture and dependency freeze. Archived repository, last release August 2023, 12 stars, zero dependents, NOASSERTION license. Adoption is a freeze-in-time commitment. That is an acceptable posture for a contained admin convenience and an unacceptable one for anything a revenue path depends on — this framing determines how much roadmap weight sits on the field.
  • Ongoing cost ownership. A browser-side Google Places key is a per-keystroke-session billing surface. Adopting this means someone owns: per-environment restricted keys, API enablement scope, per-key quotas, budget alerts, and abuse monitoring. That ownership decision — absorb it internally or avoid the dependency — is a product/ops call the package forces early.
  • Fork-or-follow contingency planning. With no upstream maintenance, the real choice is "pin the exact version and accept the ceiling" versus "vendor the field class into our own namespace." Naming that decision, an owner, and a review trigger (next Nova major, next PHP major, or a blocking bug) up front is itself a product decision this package surfaces.
  • Instrumentation and success measurement. Because the field degrades silently to a plain text input when the key, quota, or billing lapses, adoption should be paired with a source or "manually entered" flag so you can later prove whether autocomplete actually improved address quality — and detect degradation from logs rather than from an operator's spreadsheet.

When to Consider This Package

  • Consider it when the product already runs Laravel Nova, the need is address autocomplete in internal admin forms, and a single formatted address string (with optional loosely-mapped components) is sufficient. It is an operator-efficiency tool, not a customer-facing one.
  • Consider 1.3.0 specifically when configurable placeholder/helper text matters for guiding operators to actually select a suggestion, or when a non-persisting dontStore lookup genuinely fits the workflow — validate the preview/clear limitation in staging before committing to it.
  • Adopt only with eyes open on supply position. Expect no upstream compatibility fixes, no Nova/Laravel/PHP guarantees, and a NOASSERTION license that requires legal review before the code lands in a shared repository. Budget for internal ownership or a fork from day one.
  • Look elsewhere if you need public-facing address validation, international address verification (not just suggestion), geocoding beyond autocomplete, reliably structured address components, offline or degraded-network support, or any UI surface outside Laravel Nova.
  • Avoid or defer if a third-party Google API dependency, data-residency constraints, or API cost is a blocker; if the address must be both non-persisted and fully preview/clear-editable; or if the team cannot take on maintaining an archived dependency.

How to Pitch It (Stakeholders)

To executives: A small, additive Laravel Nova field that adds Google Places address autocomplete to internal admin forms — no new systems, no customer-facing surface. The latest release improves operator experience with configurable placeholder/helper text, address preview and clear, and an opt-in dontStore mode for privacy-sensitive lookups. The decision to make is not technical but about ownership: the project is archived, has minimal adoption, and its license needs legal sign-off, so we would own it internally from day one. Recommend adopting it for one or two contained admin resources as a low-cost data-quality experiment, with a pinned version and a named owner — not as a platform dependency.

To engineering: One Nova field class, one config entry for the Places key, one line on a resource. Assets must be published and the compiled JS verified after every deploy — the number one failure mode is the field silently rendering as a plain text input. Assume it degrades gracefully: accept free-typed addresses as a legitimate state, validate server-side, and log suggestion failures so quota exhaustion surfaces in logs. Test against the outcome (the record saves), not the widget, and never assert on Google's JS in CI. Treat the package as vendored source: pin the version, read the field class as the source of truth since the README is thin, and record the trigger conditions that force a fork.

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.
laravel2580/idehelpers
delatbabel/viewpages
anavel/gettext
muhamadrezaar/highcharts
delatbabel/keylists
frankkessler/salesforce-laravel-oauth2-rest
anavel/foundation
wdmtech/enviricons
eii/laravel-captcha
muka/shape-reader
tdt/json
refinery29/php-cs-fixer-config
hotmeteor/eco-env
mvaliolahi/hydrate
wearede/tbcpay-php
parsnick/steak
thibaud-dauce/mattermost-php
multilinguals/apollo-client
antaresbr/collection
kr0lik/phpstan-rules