emild/laravel-livewire-tables

A dynamic table component for Laravel Livewire

Fund package maintenance!
rappasoft

Installs: 50

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 331

Language:Blade


README

Package Logo

Latest Version on Packagist Styling Tests Total Downloads

A dynamic Laravel Livewire component for data tables.

Dark Mode

Full Table

Bootstrap 4 Demo | Bootstrap 5 Demo | Tailwind Demo | Demo Repository

Installation

You can install the package via composer:

composer require rappasoft/laravel-livewire-tables

Please see the rest of the installation instructions.

Usage

Read the documentation

Basic Example

<?php

namespace App\Http\Livewire\Admin\User;

use App\Domains\Auth\Models\User;
use Illuminate\Database\Eloquent\Builder;
use Rappasoft\LaravelLivewireTables\DataTableComponent;
use Rappasoft\LaravelLivewireTables\Views\Column;

class UsersTable extends DataTableComponent
{

    public function columns(): array
    {
        return [
            Column::make('Name')
                ->sortable()
                ->searchable(),
            Column::make('E-mail', 'email')
                ->sortable()
                ->searchable(),
            Column::make('Verified', 'email_verified_at')
                ->sortable(),
        ];
    }

    public function query(): Builder
    {
        return User::query();
    }
}

See advanced example

To-do/Roadmap

  • Bootstrap 4 Template
  • Bootstrap 5 Template
  • Sorting By Relationships
  • User Column Selection
  • Drag & Drop (beta)
  • Column Search
  • Greater Configurability
  • Collection/Query Support
  • Test Suite (WIP)

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please e-mail anthony@rappasoft.com to report any security vulnerabilities instead of the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.