Download the PHP package manggala/laravel-datatable without Composer
On this page you can find all versions of the php package manggala/laravel-datatable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download manggala/laravel-datatable
More information about manggala/laravel-datatable
Files in manggala/laravel-datatable
Package laravel-datatable
Short Description Production-ready, keyboard-navigable, server-driven Data Table package for Laravel and Inertia.js applications.
License MIT
Homepage https://github.com/IlhamHattaManggala/laravel-datatable
Informations about the package laravel-datatable
Laravel Data Table 📊
Laravel Data Table (manggala/laravel-datatable) is a production-ready, keyboard-navigable, server-driven Data Table package designed specifically for Laravel applications powered by Inertia.js and React.
💡 Why Laravel Data Table?
Data tables constitute over 80% of enterprise web applications, back-office administration portals, and SaaS dashboards. In the Laravel ecosystem, popular table packages (like Filament Tables, Livewire PowerGrid, or Rappasoft Datatables) are 100% bound to Livewire and Blade.
Applications built with Inertia.js currently lack a native, server-driven data table package on Packagist. Developers are forced to rewrite pagination links, debounced search timers, multi-column sorting parameters, filter modals, row selection checkboxes, bulk action endpoints, and CSV exports manually for every single entity.
Laravel Data Table bridges this gap by introducing a Server-Driven UI (SDUI) table engine:
- Fluent PHP Schema: Declare table columns, badges, formatters, search rules, and bulk actions entirely in expressive PHP classes.
- Sleek React UI Component: Automatically renders a high-contrast, dark-mode-ready React table (
<InertiaTable />) with zero custom React boilerplate. - Seamless Inertia Integration: Operates natively via
router.get()&router.post()for instant reactive updates without full page reloads. - Manggala Ecosystem Synergy: Deeply integrates with
manggala/laravel-spotlightfor global command palette table searches and embeds as responsive widgets insidemanggala/laravel-dashboard-builder.
🌟 Key Features
| Feature | Description |
|---|---|
| 📋 Fluent PHP Column Suite | TextColumn, BadgeColumn, DateColumn, AvatarColumn, BooleanColumn, ImageColumn, ActionColumn. |
| 🔍 Debounced Global & Column Search | Fast, 200ms debounced search streaming directly through Eloquent builder pipelines. |
| 🎛️ Dynamic Filter Suite | SelectFilter, DateRangeFilter, NumberRangeFilter, BooleanFilter, TernaryFilter. |
| ⚡ Reactive Bulk Actions | Execute bulk operations (Delete, Status Update, Export) on selected rows with confirmation modals. |
| 👁️ Column Visibility & Density Control | Empower users to show/hide columns and adjust row density (Compact, Normal, Comfortable). |
| 📥 Streamed CSV/Excel Export | Export matching database records instantly to CSV without memory exhaustion. |
| ♿ WCAG 2.1 AA Keyboard Trapping | Arrow key cell/row navigation, focus trapping, and hotkey actions (/ to focus search, Esc to clear). |
| 🔒 Role & Gate Security | Protect columns, filters, and bulk actions using Laravel Gates, Policies, and Spatie Roles. |
📦 Installation
Install the package via Composer:
Run the package installation command to publish configuration and Inertia React component views:
Optionally publish resources manually:
🚀 Quick Start
1. Define a Data Table Class
Create a dedicated Table class extending DataTable:
2. Render Table in Inertia Controller
3. Mount Frontend Component in Inertia Page
Include the <InertiaTable /> component inside your Inertia React page:
🔒 Authorization & Security
Protect columns, actions, or filters based on Laravel Gates or User permissions:
🔗 Manggala Ecosystem Synergy
manggala/laravel-datatable integrates natively with the entire Manggala suite:
manggala/laravel-spotlight: TypeCmd+K->"Filter Users by Admin"to execute dynamic table filter preset triggers directly from the command palette.manggala/laravel-dashboard-builder: Embed data tables as compact, live-updating widgets inside custom user dashboards.manggala/laravel-settings: Auto-save column visibility and row density preferences directly into user setting manifests.
⚙️ Configuration Reference
The published configuration file (config/datatable.php) controls default pagination limits and styling thresholds:
📄 License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-datatable with dependencies
illuminate/contracts Version ^10.0 || ^11.0 || ^12.0 || ^13.0
illuminate/support Version ^10.0 || ^11.0 || ^12.0 || ^13.0
illuminate/http Version ^10.0 || ^11.0 || ^12.0 || ^13.0
illuminate/database Version ^10.0 || ^11.0 || ^12.0 || ^13.0