mlsolutions/table-widget
A Laravel package that adds a reusable table widget for rendering tabular data with configurable columns, sorting, and actions. Drop it into dashboards or views to display query results quickly without rebuilding table markup each time.
Metric/card class plus build tooling — a day or two of work per table, plus ongoing design review. This package compresses that into a declarative PHP definition, so the buy/borrow case wins when the table is read-only, low-interaction, and internal-facing.nova-dashboard. It is a satellite package; it should be evaluated only after those two foundations are already committed.Consider it when all of the following hold:
nova-dashboard — this package is worthless outside that pair.Look elsewhere when:
filament/tables standalone, or a JS grid (AG Grid, TanStack Table) instead.To executives: This is a small, reversible capability that lets us put summary tables on the internal admin dashboard we already pay for, instead of scheduling custom front-end work. It costs nothing to license (MIT), the integration is a few lines of PHP, and it is fully contained — if it disappoints, we delete a widget. It is not a platform commitment and should not be presented as one; treat it as a tactical unlock for internal reporting, with the caveat that it is an early-stage package with no adoption, so we are effectively adopting the source code rather than a supported product.
To engineering: One Composer dependency plus a Nova dashboard card class. The upside is we skip writing and maintaining a Vue widget build for each table. The ask is that we review the package source before merging (it is small), pin the version in composer.json, and avoid extending it in ways that make removal expensive — keep the widget definitions thin and keep data-shaping logic in our own query/action layer so the package is swappable. If the table ever needs filters, exports, or row actions, we stop extending this and move that surface to a proper table implementation.
Recommendation: Timebox a one-day spike in staging. If it renders our top table with under ~20 lines of config and the source reads cleanly, adopt it behind a pinned version for internal dashboards only. Otherwise, fold the requirement into the next Filament/Livewire admin iteration and skip the dependency entirely.
How can I help you explore Laravel packages today?