wehaa/inline-boolean-field-update
A Laravel Nova package that lets you toggle boolean fields directly from the index list without opening a detail view. Enable inline editing for true/false columns, reducing clicks for quick status updates.
is_active / is_featured / approved screens. Frame it as a cheap probe into whether that operator loop is worth optimizing at all, not as a platform decision.is_featured, soft "active" markers, internal feature flags) and wrong for anything gating publication, access, billing, or tenant state — the exact fields where a mis-click is expensive and where the stripped reason/approval context matters.Consider it when:
packages/ or a private repo, pin the exact version, rebuild assets against your Nova build, add a feature test around the update endpoint, and treat upstream as abandoned from day one./nova-api/{resource}/{id} so update policies, canSee, and readonly still apply), and you don't need per-field audit logging or a change-reason field on this particular flag.updated/saved observers still fire on inline writes, so an activity-log observer can capture who flipped what without touching the package.Look elsewhere (or build it) when:
dist/js/field.js and its build toolchain were frozen in mid-2021, and rebuilding requires the laravel-nova build alias that only exists inside a licensed local Nova install. That's not something you can validate in CI, and it's exactly where upstream stopped being maintained.<div> with a click handler, not a real <input type="checkbox"> with focus states. Rebuilding it natively from Nova's official scaffolding is likely under a day at this surface area and cheaper than retrofitting.Non-negotiable validation before any rollout: test the network call, not the UI. Confirm the request URL/method (policy enforcement path), that the UI reverts on a blocked request or 500, and use assertDatabaseHas to verify persistence. A toggle that renders correctly and silently does nothing is the expected failure mode for a stale compiled Vue asset against a mismatched Nova runtime.
To executives: This is a small, low-cost probe, not a platform bet. It tests whether a specific operator workflow — flipping flags in a back-office list — is worth optimizing. Cost is roughly a day of engineering for a spike, with a clear kill criterion: if operators don't measurably use the toggle within a week, we stop. The strategic value is less in the feature than in what the evaluation surfaces: the audit, permissions, and approval requirements hiding behind "just add a toggle," which we'd otherwise discover mid-sprint.
To engineering: Treat the repository as a reference implementation, not a dependency. The package is a few hundred lines (a Nova Field class plus a Vue component); we vendor it, pin it, rebuild the assets against our own Nova build, and read the write path before installing anything — specifically whether it posts to /nova-api/{resource}/{id} with PUT (policies, canSee, readonly, and validation all apply) or to a custom route (policies are bypassed). We add a feature test around the update endpoint so coverage survives a JS rebuild, wire audit through model events rather than the form, and keep the native Boolean field on the detail view via ->onlyOnIndex() / ->onlyOnDetail() so form-only context still exists where it matters. Rollout is one resource, one low-consequence flag, one week.
To whoever owns the Nova upgrade roadmap: this package is a line item. Every Nova major upgrade costs a rebuild plus smoke test for any forked custom field, because asset rebuilds can't be validated in CI without a licensed Nova install — a runbook step, budgeted explicitly, not discovered during the upgrade. If we're already planning Nova 4/5 within the next two quarters, skip the fork entirely and build the field natively from official scaffolding; the maintenance math inverts.
How can I help you explore Laravel packages today?