jobcerto/nova-grid
jobcerto/nova-grid adds a flexible grid layout to Laravel Nova, letting you arrange fields, cards, or resource data in responsive columns. Configure columns, gaps, and breakpoints to build cleaner custom index and detail views with minimal code.
Architecture fit
jobcerto/nova-grid is a Laravel Nova presentation-layer extension, not an application package. It augments Nova's resource index with a spreadsheet-style editable grid, so it inherits Nova's auth, policy, and routing model rather than introducing its own. That is architecturally clean — no migrations, no domain coupling, no side tables — but it also means the package is only viable if Nova is already the sanctioned admin surface. If the roadmap contemplates moving admin off Nova (Filament, custom SPA, headless), this package adds migration debt rather than reducing it. Treat it as a UI accelerator, not a platform component.
Integration feasibility Integration is nominally a one-line Composer dependency plus registration of a field or tool in the relevant Nova resource. That surface area is small enough to prototype in under a day. The real feasibility question is version compatibility: Nova's front-end API changed materially between Nova 3 (Vue 2) and Nova 4/5 (Vue 3), and a package of this vintage may only target one of them. With zero dependents and a score of 0, there is no ecosystem evidence that it has been exercised against current Nova releases.
Technical risk
PUT /nova-api/... endpoints can bypass policies, field-level authorization, and validation rules. This must be verified in code, not assumed.Key questions
composer.json constraint that proves it?belongsTo, date casts, and file fields?Stack fit Good fit only for teams already running Nova on Laravel with a licensed Nova installation and a small-to-medium internal admin surface. Poor fit for multi-tenant public-facing admin, regulated environments requiring audit trails, or any team actively evaluating Nova replacements.
Migration path Adopt incrementally and reversibly. Keep the standard Nova index as the default and expose the grid as an opt-in tool on two or three low-risk resources (reference data, catalog rows, config tables). Use Nova's existing permission system to gate visibility by role, so rollback is a permission change rather than a deploy. Do not migrate high-value transactional resources until the save path has been security-reviewed.
Compatibility
Pin nova, laravel/framework, and php constraints in composer.json and verify against a staging Nova instance before any production branch. If the package targets Nova 3 and the estate is on Nova 4/5, budget for a fork: the Vue component is likely the only non-trivial piece, and reimplementing it as an in-house Nova tool is a bounded 1–3 week effort for a competent Laravel engineer.
Sequencing
Maintenance Assume self-maintenance. With no dependents, no ecosystem pressure exists to keep it compatible with new Nova releases, so every Nova upgrade becomes a manual regression test. The realistic operating model is: clone to an internal namespace, add tests around the save path, and own it — or freeze Nova upgrades while the package is in use. Neither is free; make the cost explicit before adoption.
Support Community-only. GitHub issues on an unstarred repository are effectively best-effort with no SLA. Escalation path is internal engineering, so the owning team needs at least one engineer fluent in Nova's front-end extension model.
Scaling Inline grids encourage bulk editing, which increases both payload size and write volume. Require server-side pagination, capped page sizes, and eager-loaded relations. Watch for per-cell AJAX calls that amplify into hundreds of requests per page. Concurrency is the sharper edge: two admins editing the same row in a grid have no natural locking, so lost updates are a real operational failure mode unless optimistic concurrency (updated_at checks) is added.
Failure modes
Ramp-up Developer ramp-up is low — hours for anyone who has built a Nova field. Admin ramp-up is the underrated cost: a spreadsheet UI invites bulk editing behavior that the underlying resource may not tolerate (events, observers, notifications firing hundreds of times). Pair the rollout with guardrails — validation rules, write limits, and a short "what not to do in the grid" note — or the productivity gain converts directly into data-quality incidents.
How can I help you explore Laravel packages today?