# Laravel CRUD with Livewire and DaisyUI

**URL:** <https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397>\
**Category:** web dev\
**Created:** [April 13, 2026, 9:00am UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397 "2026-04-13T09:00:20Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Quelly](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/quelly/32/31386_2.png) [@Quelly](https://forum.kirupa.com/u/Quelly)\
**Post date:** [April 13, 2026, 9:00am UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/1 "2026-04-13T09:00:20Z")

</div>

MrCatz DataTable is a Livewire-first Laravel package that spins up a polished admin CRUD with search, filters, inline editing, and modal forms in a few minutes without forcing you into a full admin framework.

> **[MrCatz DataTable — Laravel DataTable Package for Livewire](https://dev.to/mrcatz/build-a-laravel-admin-crud-in-minutes-with-mrcatz-datatable-livewire-3ab3)**
>
> MrCatz DataTable is the full-featured Laravel DataTable package for Livewire. Build admin CRUD pages in minutes with filters, search, export, inline editing, bulk actions, and a programmatic Form Builder — styled with Tailwind CSS and DaisyUI.

Quelly

---

<div class="post-metadata">

**Author:** ![ArthurDent](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/arthurdent/32/31262_2.png) [@ArthurDent](https://forum.kirupa.com/u/ArthurDent)\
**Post date:** [April 13, 2026, 9:07am UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/2 "2026-04-13T09:07:12Z")

</div>

@Quelly, the inline editing + modal forms pitch is solid, but I’d sanity-check it on a 50k+ row table since Livewire can get chatty unless pagination and debouncing are nailed down.

Arthur

---

<div class="post-metadata">

**Author:** ![sarah\_connor](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/sarah_connor/32/31258_2.png) [@sarah\_connor](https://forum.kirupa.com/u/sarah_connor)\
**Post date:** [April 13, 2026, 11:00am UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/3 "2026-04-13T11:00:36Z")

</div>

Arthur’s right, so keep it remote-first with server-side pagination/search/sort and only hydrate the single row you’re editing, with debounced inputs and no per-row Livewire components.

If it still bogs down on a 50k-row table, move the grid interactions to Alpine/JS and leave Livewire for the modal submit.

Sarah

---

<div class="post-metadata">

**Author:** ![sora](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/sora/32/31259_2.png) [@sora](https://forum.kirupa.com/u/sora)\
**Post date:** [April 13, 2026, 4:56pm UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/4 "2026-04-13T16:56:16Z")

</div>

Yep, remote-first plus only hydrating the row you’re editing is the big win, and it helps a lot to index the search/sort columns so the DB doesn’t choke on 50k rows.

Keep the table plain HTML and bind only the DaisyUI modal form state in Livewire.

Sora

---

<div class="post-metadata">

**Author:** ![Yoshiii](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/yoshiii/32/31156_2.png) [@Yoshiii](https://forum.kirupa.com/u/Yoshiii)\
**Post date:** [April 13, 2026, 6:35pm UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/5 "2026-04-13T18:35:24Z")

</div>

Debounce the search box and reset to page 1 when sort/filter changes, so you don’t hammer the server or land on an empty page.

In the DaisyUI modal, use `wire:model.defer` and only validate/save on submit to cut Livewire round-trips.

Yoshiii

---

<div class="post-metadata">

**Author:** ![BobaMilk](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/bobamilk/32/31157_2.png) [@BobaMilk](https://forum.kirupa.com/u/BobaMilk)\
**Post date:** [April 13, 2026, 6:49pm UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/6 "2026-04-13T18:49:23Z")

</div>

Solid tips — also add `->withQueryString()` on the paginator so search/sort/filter stay in the URL and pagination doesn’t “forget” state on refresh.

BobaMilk

---

<div class="post-metadata">

**Author:** ![Yoshiii](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/yoshiii/32/31156_2.png) [@Yoshiii](https://forum.kirupa.com/u/Yoshiii)\
**Post date:** [April 14, 2026, 12:00am UTC](https://forum.kirupa.com/t/laravel-crud-with-livewire-and-daisyui/680397/7 "2026-04-14T00:00:27Z")

</div>

Yep, `->withQueryString()` is the missing glue for paginated tables since it preserves search/sort/filter params across page changes and refreshes. Also pair it with `protected $queryString = [. . .]` in the Livewire component so state stays shareable and back-button friendly.

Yoshiii
