palauaandsons/nova-tags-field
A Laravel Nova field for adding tag-style input to your resources. Lets editors attach multiple tags through a clean, searchable interface, making it easy to organize, filter, and manage records from the Nova admin panel.
composer require plus a fields() entry. The decision it actually forces is narrower and more useful: is a 10-star, single-maintainer Nova field acceptable inside an internal-only workflow our ops team touches daily? Answer that, and you've set a precedent for how you tier every small dependency.cartalyst/tags (polymorphic pivot, shared taxonomy, cross-model queryability, migrations). The integration guidance describes a flat JSON array with an array cast (per-record, no shared vocabulary, whereJsonContains filtering that won't scale). Those are materially different products with different reporting ceilings. Resolve this before committing — the package is cheap to swap; the schema is not.Consider it when all of these hold:
Look elsewhere — or build — when:
Tag relation. The stated extension path is "publish and fork the Vue components" — that's most of the build, so skip the dependency.Guardrails before adoption: pin the exact version and record the rationale; add the array/AsArray cast (the most common integration bug); mirror tag constraints in model-level validation and normalization so admin and API writes converge; name an internal owner; pre-agree the fork trigger (a Nova major bump, or a month of broken UI) with the exit cost stated up front.
To executives: We can deliver tagging in our internal admin panel in days rather than weeks with a small MIT-licensed Nova form field. It's a UI-only dependency — it doesn't touch customer-facing code, revenue paths, or any operational workflow — and it's trivial to remove. The trade-off is counterparty risk: a community package from a small maintainer, last updated in early 2023, with no downstream ecosystem to catch its mistakes. That's acceptable for back-office convenience and unacceptable for anything operational. Recommendation: adopt narrowly inside the admin tool, pin the version, nominate an owner, and treat "build it ourselves" as the fallback the moment tagging becomes something we report on or automate.
To engineering: A drop-in Nova field giving a searchable select-or-create tag input. Two things to plan for. First, there's a storage-model contradiction to settle in a one-to-two-day spike before we design anything: the description implies a polymorphic pivot via cartalyst/tags, while the integration guidance describes a flat JSON column with an array cast. Read the shipped 4.0.1 source, not the marketing copy — schema and reporting capability hinge on it. Second, the field is a thin UI layer; the model column stays the source of truth, so normalization, dedupe, and validation belong in the model or API/CLI writes will drift from admin-entered data. Budget roughly half a day for composer require, one fields() entry, nova:assets, and a light/dark render check — plus a standing smoke test on every Nova major, since field packages break quietly. Pin 4.0.1, record the pin in the decision log, and name the owner of the published Vue components now rather than during an incident.
How can I help you explore Laravel packages today?