yajra/laravel-datatables-html
Generate DataTables scripts in PHP with Laravel DataTables Html. Build tables using a fluent builder, with support for Vite, DataTables 2.x, and Laravel 12. Install via composer require yajra/laravel-datatables-html:^13.
yajra/laravel-datatables, so this is not a new bet — it is the standard rendering layer for a package our Laravel team would almost certainly already be on. The decision is "adopt the front-end of the ecosystem we're in," which is a low-stakes call relative to adopting a new third-party platform.Builder::useVite() and Livewire 4 support (v12.7.0) mean this composes with modern Laravel build tooling and component stacks, so it doesn't lock us out of the Livewire-based admin patterns we may want later.Consider it when most of the following are true:
yajra/laravel-datatables, or intend to for server-side query/filtering/authorization. This package is a presentation-layer plugin and does nothing useful on its own.Look elsewhere when any of these hold:
Risk notes to carry forward: single primary maintainer; modest star count relative to the parent ecosystem; "0 dependents" reported, so external validation signals are weak — but that metric understates reality because adoption flows through the parent package. Mitigation is straightforward: MIT license, small surface area, and the integration is shallow enough that removing it is a contained refactor, not a re-platforming.
To executives: This is a free, MIT-licensed plugin that lets our Laravel team deliver back-office data tables — searchable, sortable, exportable, editable grids — in a fraction of the time of hand-building them. It's a small, low-risk adoption on top of a package ecosystem our stack already leans toward, and it directly accelerates delivery of internal tools without adding vendor cost or contract exposure.
To engineering: This replaces per-page hand-written jQuery DataTables initialization with a fluent PHP Builder — columns, ajax source, buttons, editor fields, and layout defined as code in controllers or service classes, rendered through Blade with Vite and Livewire 4 support. It cleanly separates concerns: query, filtering, and authorization stay in the parent yajra/laravel-datatables package; markup and client config live here. Integration is one composer require, one Builder::useVite() line in AppServiceProvider, and an optional asset publish. Version compatibility is explicit across Laravel 9–13, and the package tracks new Laravel majors promptly. The tradeoff is an explicit commitment to a jQuery-descended client library — correct for admin surfaces, wrong for customer-facing product UI — so scope it to internal tooling and keep SPA-facing features out of it.
The ask: approve adoption as the standard for admin data-table screens, and record "Blade + DataTables for internal UI; not for customer-facing surfaces" as the architectural boundary that governs future feature requests.
How can I help you explore Laravel packages today?