{
  "id": 12870555,
  "title": "Building a Laravel-First Data Table with Inertia.js and Vue 3",
  "url": "https://urgent.news/2026/10/08/building-a-laravel-first-data-table-with-inertia-js-and-vue-3",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-10-08T12:40:11.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/zonvoir_technologiespvt/building-a-laravel-first-data-table-with-inertiajs-and-vue-3-10a3"
  },
  "original_language": "en",
  "account": "When constructing data tables in Laravel applications using Inertia.js and Vue 3, it's essential to keep the table logic close to Laravel while allowing Vue to focus on rendering and user interaction. This approach helps avoid duplicating logic between the two frameworks. The basic flow involves the Laravel Table Class handling the query and table configuration, while Vue receives the resulting data to render it and manage interactions.\n\nThe Laravel side defines columns, query, and table configuration, while Vue focuses on the UI. For example, a UsersTable class extends ZonTable, with methods for defining the query and columns. Inertia.js serves as a middle ground, allowing the use of Vue for the interface while Laravel continues handling queries, authorizations, sorting, pagination, and data preparation.\n\nThe current Vue version of Zonvoir Table includes features like searching, sorting, pagination, typed columns, column visibility, row actions, bulk actions, Excel exports, URL-synced state, and customizable UI. The team is focusing on the Laravel + Inertia.js + Vue 3 ecosystem, avoiding reinventing every table feature. Instead, they aim to provide a Laravel-first data table solution for applications built with Inertia.js and Vue.\n\nThe package is still actively developing, and feedback from Laravel and Vue developers is welcome. Developers can explore the project on the website, documentation, and GitHub repositories. By addressing the specific needs of applications built with these frameworks, Zonvoir Table seeks to offer an efficient and reusable solution for data tables.",
  "summary": "How we approached server-side tables, searching, sorting, pagination, actions, and table state without duplicating logic between Laravel and Vue. If you've built a Laravel application with Inertia.js and Vue, you've probably built a data table more than once. At first, it looks simple: Get some records Display them in Vue Add pagination Add sorting Add search Then the requirements start growing.…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}