Laravel Livewire Tables
Dynamic, feature-rich data table component for Laravel Livewire
Repository Health
Technical Analysis
Laravel Livewire Tables is a dynamic data table component for Laravel Livewire applications. By extending a single DataTableComponent class and declaring your columns, you get a fully interactive table with sorting, searching, filtering, pagination, and bulk actions, all driven server-side against your Eloquent models.
The package supports Tailwind CSS and Bootstrap 4/5 themes, reorderable and hideable columns, custom filters, row and bulk actions, and reactive updates powered by Livewire and Alpine.js. It removes most of the boilerplate involved in building admin tables and data grids in Laravel.
What You Get
- A DataTableComponent base class that turns an Eloquent query into a live table
- Built-in sorting, searching, filtering, and pagination handled server-side
- Row selection with bulk actions and configurable per-row actions
- Tailwind CSS and Bootstrap 4/5 theme support with dark mode
- Reorderable, hideable, and reactive columns with custom formatting
Common Use Cases
- Building admin dashboards that list and manage database records
- Adding searchable, filterable data grids to a Laravel back office
- Replacing hand-rolled table markup with a reactive, paginated component
Under The Hood
Architecture - The heart of the package is src/DataTableComponent.php, an abstract Livewire component that users subclass. Cross-cutting behavior is composed from many Traits/ (search, sorting, pagination, filters, bulk actions, column selection) and organized Features/ and Mechanisms/, with Views/Column.php and related classes describing each column. A LaravelLivewireTablesServiceProvider registers config, Blade views under resources/, and Artisan Commands for scaffolding, while External/ and compiled public//minifyJs assets provide the Alpine.js-powered front end.
Tech Stack - PHP for Laravel with Livewire as the reactive layer and Alpine.js 3+ on the client. Styling ships for Tailwind CSS and Bootstrap 4/5. Config lives in config/, Blade templates in resources/.
Code Quality - Mature engineering: extensive PHPUnit tests with Codecov, PHPStan level 6 with a baseline, Psalm, and Pint/PHP-CS-Fixer styling all wired into CI. The trait-based decomposition keeps a large feature set organized.
API Design - Ergonomics are strong for Laravel developers: define query() and columns() and the table just works, with fluent Column builders (Column::make(...)->sortable()->searchable()). The breadth of configuration means a moderate learning curve for advanced features, but the extensive documentation and sensible defaults keep basic usage approachable.