- How do I install gkermer/nova-text-auto-complete?
- Run composer require gkermer/nova-text-auto-complete in your Laravel application; the service provider is auto-discovered, so manual registration is typically not needed. Then use TextAutoComplete::make('field') in your Nova Resource's fields() method, chaining ->options([...]) to supply suggestions. It is a presentation-only Nova field with no migrations or configuration files.
- Which Laravel and Nova versions does this package support?
- The last release was January 2021, which places it in the Nova 3, Laravel 7-8, PHP 7.4-8.0 era with Vue 2 components. It is not built for Nova 4 or 5, which moved to Vue 3 and a different asset pipeline. Check the composer.json laravel/nova constraint before installing, because it may conflict with newer Nova versions.
- Does it work with Nova 4 or Nova 5?
- Almost certainly not without a port. Nova 4+ uses Vue 3 and a changed asset pipeline, while this package ships Vue 2 single-file components. Adopting it on Nova 4/5 would require vendoring the source, converting the components, and rebuilding assets against Nova's current tooling. If a Nova upgrade is on your roadmap, treat this package as a non-starter as-is.
- How do I define autocomplete options for the field?
- Chain ->options([...]) on the field in your Resource, passing a static array of suggestion strings. The package adds autocomplete behavior to a normal Nova text input, so the field remains a text field with suggestion support. Consult the README for the exact option format and any remote-source configuration before wiring it into forms.
- Can suggestions come from a database query or remote endpoint?
- The package is described as supporting suggestions from a static list or a remote source, so dynamic options are part of the intended use. Be careful with Eloquent-backed suggestions on index views, where they can create N+1 query problems. Also verify that remote or user-generated suggestion values are escaped before rendering, since they are injected into a Vue component and the DOM.
- Is this package actively maintained?
- No. The last release was January 2021, roughly 4.5 years ago, with about 22 stars and effectively a single maintainer. There is no visible CI, test suite, or issue triage. Assume you own the code from the day you adopt it and plan for an internal fork if you depend on it long term.
- Is it safe to use in production?
- The attack surface is relatively small because it is a form field, but suggestion payloads are rendered in the DOM through a Vue component. Unescaped suggestion values would be an XSS vector, especially if options come from user-generated data. Verify escaping and review the component before production use, and wrap usage in a thin internal field class so you can swap implementations later.
- Does the field store a plain string or JSON/array data?
- It is a text input with autocomplete, so it most likely persists a plain string value. However, the technical evaluation flags the exact persistence behavior as unconfirmed, and it matters for schema and API contracts. Test the field against your database before relying on it.
- What are the alternatives to this package?
- If you only need to pick from a known list, a first-party Nova Select field with searchable options is the lowest-risk option. Maintained community autocomplete fields are another choice, or you can fork this package and port it to your Nova version. Wrapping any choice in an internal field class keeps you from being locked in.
- Does it have tests, CI, or accessibility support?
- There is no visible CI, test suite, or issue triage in the repository, so there is no behavioral baseline to run before modifying it. Keyboard navigation and aria-autocomplete support are also unverified. If you fork or port the package, budget time for tests, accessibility fixes, and escaping checks.