mrcatz/datatable

Livewire DataTable base class for Laravel — CRUD, bulk actions, export, keyboard navigation, expandable rows, URL persistence, and more.

Maintainers

Package info

github.com/mrc4tz/mrcatz-datatables

pkg:composer/mrcatz/datatable

Fund package maintenance!

ryankucingg

Statistics

Installs: 211

Dependents: 0

Suggesters: 0

Stars: 6

Open Issues: 1

v1.29.19 2026-04-19 00:30 UTC

This package is auto-updated.

Last update: 2026-04-19 00:31:38 UTC


README

Packagist Version Packagist Downloads License Docs Laravel Livewire Tailwind CSS DaisyUI

MrCatz DataTable

DataTable + Form Builder for Laravel Livewire — build complete admin pages in minutes.

📖 Full documentation → 🎮 Live demo →

What is this?

A complete, opinionated DataTable + CRUD framework for Laravel + Livewire applications. Bundles everything you typically rebuild from scratch on every admin page — pagination, sorting, filtering, search, inline editing, bulk actions, expandable rows, exports, and a programmatic Form Builder — into a single composable API.

Think of it as "Filament's CRUD productivity, but you keep full control over your stack." You choose your Tailwind version, your DaisyUI theme, your Livewire flavor — MrCatz slots into your existing Laravel app instead of replacing it.

Highlights

  • CRUD in minutesphp artisan mrcatz:make Product --path=Admin scaffolds everything
  • 🔍 Smart search — multi-keyword highlighting, per-column relevance scoring, typo tolerance, optional Meilisearch driver (beta)
  • 🎯 Powerful filters — select, callback, dependent, and full date / date-range filters with operator support
  • ✏️ Inline editing — click any cell to edit, with validation rules, keyboard navigation, per-row gating
  • 📊 PDF, CSV & Excel export — built-in styling, fully customizable layouts
  • 🧱 Form Builder — define add/edit forms in PHP with chainable modifiers, sections, conditional fields
  • ☑️ Bulk actions & expandable rows
  • 📱 Fully responsive — adapts cleanly from desktop tables to mobile card layouts out of the box
  • 🎨 Themed via DaisyUI — works with any DaisyUI theme, full control over colors

Quick install

composer require mrcatz/datatable

Wire your base layout. In your app's base layout (usually layouts/app.blade.php), add these three directives before </body>. All three are required — without them the datatable, form modal, and toast notifications silently fail.

{{-- resources/views/layouts/app.blade.php --}}
<body>
    {{-- ... your app content ... --}}

    @include('mrcatz::components.ui.notification')

    @livewireScripts
    @stack('scripts')
</body>

Using Jetstream, Breeze, or Filament? Your layout likely already has @livewireScripts and @stack('scripts') — you only need to add the notification include.

Add the package's blade path to your Tailwind content scan:

/* resources/css/app.css (Tailwind v4) */
@source '../../vendor/mrcatz/**/*.blade.php';

Then generate your first CRUD page:

php artisan mrcatz:make Product --path=Admin

Add a route and you're done:

Route::get('/admin/products', \App\Livewire\Admin\Product\ProductPage::class);

For the full setup walkthrough — including optional Excel/PDF export, Meilisearch, Docker, and theming — see the Quick Start guide.

Documentation

The complete reference, with code samples and live demos for every feature, is hosted at datatable.catzoid.tech.

Section What's covered
Getting Started Introduction, installation, quick-start
Core Features Columns, filters, search, sorting, pagination
Editing & Actions Inline editing, bulk actions, expandable rows
Form Builder Programmatic forms with chainable modifiers
Export PDF, CSV & Excel with custom layouts
Advanced Search Per-column scoring, typo tolerance, Meilisearch (beta)
Customization Icons, localization, theming
Deployment Docker patterns for vendor blade scanning

Requirements

  • PHP 8.1+
  • Laravel 11.x / 12.x / 13.x
  • Livewire 3.x / 4.x
  • Tailwind CSS v3 or v4
  • DaisyUI v4 or v5

Optional dependencies

composer require maatwebsite/excel        # CSV & Excel export
composer require barryvdh/laravel-dompdf  # PDF export
composer require laravel/scout meilisearch/meilisearch-php  # Meilisearch search driver (beta)

Built with Claude

A large portion of this package — and its documentation site — was built collaboratively with Anthropic's Claude. The maintainer focused on architecture decisions, requirements, and design trade-offs; Claude handled most of the implementation, tests, and docs writing. A reminder that AI-assisted development, when guided well, multiplies what one developer can ship.

Issues & contributions

Bug reports and feature requests welcome at github.com/mrc4tz/mrcatz-datatables/issues.

License

MIT