Download the PHP package qbits/laravel-inertia-vue-datatable without Composer
On this page you can find all versions of the php package qbits/laravel-inertia-vue-datatable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package laravel-inertia-vue-datatable
Laravel Inertia DataTable
A full-featured DataTable package for Laravel + Inertia.js + Vue 3.
Features
| Feature | ✓ |
|---|---|
| Server-side pagination | ✅ |
| Column sorting (asc/desc) | ✅ |
| Search / filtering | ✅ |
| Row selection + select all | ✅ |
| Bulk actions | ✅ |
| Column visibility toggle | ✅ |
| Export CSV / XLSX | ✅ |
| Custom action buttons (slot) | ✅ |
| Custom cell renderers (slot) | ✅ |
| Debounced search | ✅ |
Installation
Publish config + Vue component:
The Vue component will land at:
Backend: Controller
Add the HasDataTable trait to any controller and call $this->dataTable():
Routes
Column Definition
| Key | Type | Default | Description |
|---|---|---|---|
key |
string | required | Model attribute / DB column |
label |
string | required | Column header text |
sortable |
bool | false |
Allow sorting by this column |
searchable |
bool | false |
Include in LIKE search |
exportable |
bool | false |
Include in CSV/XLSX export |
visible |
bool | true |
Initial visibility |
Frontend: Vue Component
Props
| Prop | Type | Default | Description |
|---|---|---|---|
columns |
Array | required | Column definitions (from server) |
rows |
Array | [] |
Current page rows |
meta |
Object | required | Pagination meta |
filters |
Object | {} |
Active filter state |
rowKey |
String | 'id' |
Unique row identifier |
selectable |
Boolean | true |
Show row checkboxes |
showColumnToggle |
Boolean | true |
Show columns menu |
exportable |
Boolean | true |
Show export buttons |
exportUrl |
String | '' |
URL to hit for export |
bulkActions |
Array | [] |
[{ key, label }] |
searchDebounce |
Number | 350 |
Debounce ms for search input |
Events
| Event | Payload | Description |
|---|---|---|
bulkAction |
{ action: string, ids: number[] } |
Fired on bulk action click |
selectionChange |
number[] |
Selected row IDs |
Slots
| Slot | Props | Description |
|---|---|---|
cell-{key} |
{ row, value } |
Custom cell renderer per column |
rowActions |
{ row } |
Action buttons at end of each row |
actions |
— | Extra buttons in the toolbar |
Configuration
config/datatable.php
Requirements
- PHP 8.1+
- Laravel 10 or 11
- Inertia.js + Vue 3
maatwebsite/excel^3.1
License
MIT
All versions of laravel-inertia-vue-datatable with dependencies
PHP Build Version
Package Version
Requires
php Version
^8.1
illuminate/support Version ^10.0|^11.0
illuminate/http Version ^10.0|^11.0
maatwebsite/excel Version ^3.1
illuminate/support Version ^10.0|^11.0
illuminate/http Version ^10.0|^11.0
maatwebsite/excel Version ^3.1
The package qbits/laravel-inertia-vue-datatable contains the following files
Loading the files please wait ...