stepanenko3/nova-boolean-group-field
A Laravel Nova field for grouping multiple boolean attributes into one compact control, making related true/false options easier to view and toggle in admin panels. Useful for permissions, settings, feature flags, and other grouped on/off choices.
BooleanGroup or an in-house fork should be a one-file change, not a migration project.BooleanGroup covers most of the same ground, so adoption should hinge on a specific, nameable gap (option labels and defaults, layout, display rendering) that justifies the extra dependency.BooleanGroup, whether frontend assets ship prebuilt, and field-level authorization behavior. The README is thin — the source in vendor/ is the real documentation, and that review is a prerequisite, not a nice-to-have.->options() entry.For executives: This is a small, low-cost, reversible improvement for internal admin users already on Laravel Nova. It reduces custom UI build effort and speeds up configuration-heavy back-office screens, but it is not a customer-facing differentiator or a strategic platform bet. Approve it as a tactical dependency with a named owner, a pinned version, a defined pilot scope (one admin screen, low-risk settings), and a documented fallback to Nova's native field. The decision is not "should we standardize on this" — it is "should we spend a small amount of effort here instead of building it ourselves."
For engineering: This is an MIT-licensed Nova custom field that groups boolean options into one form control and persists the selections as a JSON/array attribute on an Eloquent model. Adopt it behind a thin internal wrapper (a single field factory) so a fork or a revert to native BooleanGroup stays a one-file change; keep the option keys in config or an enum so the form, the validation rules, and the read-side helpers can't drift. Normalize on read by merging stored values over a defaults array, validate keys explicitly, add the array cast in the same commit as the migration, and confirm mass assignment, asset build, and field-level authorization before rollout. Because there are zero dependents and no visible test suite, the team owns the regression surface — a feature test that posts a preference payload through the Nova endpoint and asserts the stored JSON is the minimum insurance. Pin Nova and this package together, and re-run the CRUD/validation/permission pass on every Nova upgrade; Nova 5 compatibility is unverified.
How can I help you explore Laravel packages today?