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 Action Button Laravel Package

pdmfc/nova-action-button

Add configurable action buttons to Laravel Nova resources. Define buttons with labels, icons, colors, and links or actions, then place them on resource detail and index views to trigger custom operations, external URLs, or modal actions with minimal code.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Friction tuning on routine back-office workflows. Nova already exposes actions through dropdowns and row menus. This package lets a PM make an explicit product decision about how many clicks separate an operator from a repeatable task — resend an invitation, mark as reviewed, re-sync a record, approve a pending item. If the KPI is time-to-complete per ticket, operator throughput per hour, or onboarding time for a new ops hire, button-level affordances are the direct lever. It is a cheap instrument for testing that hypothesis before committing roadmap capacity to custom Vue or a bespoke admin UI.

  • Build vs. buy vs. adopt for a single UI affordance. The realistic alternative is not "build a feature" — it is a 1–3 day internal Nova field plus indefinite maintenance of something narrower and equally under-maintained. Because this is MIT-licensed and pre-built, the decision collapses to roughly half a day of integration and validation against our Nova version versus a sprint of rework. For an internal tool with a small, trusted operator group, adopt-and-vendor usually wins on cost.

  • Roadmap sequencing as a de-risker. It enables shipping a workflow pilot — a manual approval queue, a record-sync button, an escalation control — in days and gathering real operator signal (click volume, error rate, abandonment, support tickets) before deciding whether the workflow deserves a real backend state machine, a dedicated service, or a job-queue redesign. The button is the cheap probe; the usage data tells us whether to invest further, and gives us a defensible "we tried the thin version" datapoint if we later ask for engineering time.

  • Encoding business rules in the UI layer without a new endpoint. Where actions must be hidden or disabled based on resource state — already approved, unpaid, missing permission, wrong status — the field gives a PM a concrete place to express "this action should not be offered unless X" as a product requirement rather than a nicety. That matters for compliance-adjacent flows where showing an action a user cannot take is itself a defect, not just poor UX. The field handles the visibility UX; the Action class and policy remain the security gate, so the requirement is enforceable and testable.

  • A forcing function for action hygiene. Because the button dispatches an existing Nova Action rather than reimplementing logic, adopting it pushes teams toward one canonical action class with one set of permissions, confirmations, and queue semantics. That is a maintainability decision with product consequences: the dropdown and the button can never drift apart, so behavior an operator learns in one place holds in the other.

  • Platform posture signal. Adopting small, unmaintained community packages deepens Nova lock-in. Declining them is a data point that it may be time to evaluate Filament or a bespoke admin. Every adoption is a quiet vote on the admin-platform bet, and this one should be recorded as such in the decision log rather than absorbed silently into a sprint.

When to Consider This Package

Consider it when:

  • We are on Laravel Nova 3.x and staying there for the planning horizon. The last release was October 2021, which predates Nova 4's frontend rework and all of Nova 5 — treat 4/5 compatibility as unverified until spiked, never assumed.
  • The need is narrow and internal: a handful of operational actions, a small trusted operator group, and low blast radius if a button misbehaves (idempotent or reversible actions only).
  • We are willing to vendor/fork the code into our repository. At 36 stars, zero dependents, and a single maintainer, we are effectively the maintainer from day one — budget a named owner, a pinned commit, and a smoke test in CI.
  • The goal is to validate a workflow before investing in a proper backend implementation, with an exit criterion agreed up front ("if the button does not render and dispatch correctly on our Nova version within one day, we stop").
  • The team is already fluent in Nova custom fields, so integration cost is genuinely hours rather than days, and the index-vs-detail surface decision can be made without a design cycle.
  • We want a time-boxed pilot with a measurable read: we can state now what success looks like (fewer clicks per ticket, fewer "how do I…" questions, faster queue drain) and what abandonment looks like.

Look elsewhere when:

  • We are on Nova 4 or 5, or plan to upgrade within the planning horizon. Unmaintained Nova 3 fields are a recurring, well-understood upgrade tax — and this one's compiled JS bundle is the part most likely to break.
  • We need vendor support, SLAs, or security patching. MIT plus a single 2021 release means none of that exists. If the action is destructive, financial, or customer-visible, do not build it on an unmaintained UI shim.
  • Native Nova inline/standalone actions (materially improved in Nova 4+) already satisfy the UX requirement — in which case the honest answer is "no package needed," and we should say so before someone writes an ADR.
  • We are not on Nova at all, or are actively evaluating admin-panel alternatives. Adopting a Nova-only package is a lock-in decision disguised as a small convenience.
  • The underlying action needs auditability, retries, or long-running execution. That belongs in a queued job with a real audit trail; a button component adds an entry point and nothing else.
  • The workflow implies ten or more one-click controls on a page. Past five or six, the honest product answer is an action group or a redesigned task surface, not more buttons.

How to Pitch It (Stakeholders)

For executives (30 seconds): This is a small, free (MIT) add-on for our Laravel admin panel that puts operational actions — approve, resend, sync — directly in front of the people doing that work, instead of buried in menus. The upside is speed: it lets us pilot an internal workflow in days rather than a sprint, and it is cheap to abandon if the pilot does not move the metric. The downside is maintenance: the package has not been updated since 2021 and has a tiny user base, so we should treat it as code we own, not a vendor relationship. Recommendation: approve as a time-boxed pilot on Nova 3, with a one-day compatibility spike and a named owner; do not adopt it for anything customer-facing, irreversible, or financially material.

For engineering: Small surface area — a Nova field that renders a button dispatching an existing Action class. Plan to vendor it, pin an exact commit, and own it; the source is the documentation. First task is a compatibility spike against our exact Nova version, plus verification that authorization and confirmation still behave server-side — a button visible to a user who cannot execute the action is an information leak, not just bad UX, so the explicit denial test is part of the deliverable, not a follow-up. Wire the button to the Action class rather than reimplementing logic, keep confirmText and authorizedToSee on the Action so button and dropdown stay identical, put anything non-trivial behind ShouldQueue, and watch for field semantics leaking into exports and sort handlers. Estimate half a day to integrate on detail pages, one day to harden and extend to index rows. If the spike fails — no render and dispatch within one day — we fall back to native Nova inline actions or a small in-house field, and we say so early rather than debugging a 2021 dependency in production.

For the operator team: The change is deliberately modest — the same actions you already run from the menu, now available as a labelled button on the record you are looking at. Nothing about permissions or confirmations changes, because the button calls the same action. We want your feedback on which two or three actions actually deserve a button, and we will measure whether it saves you time before we build anything bigger.

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.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle