rappasoft/laravel-livewire-tables

A dynamic table component for Laravel Livewire

Fund package maintenance!
rappasoft

Installs: 1 890 039

Dependents: 32

Suggesters: 0

Security: 0

Stars: 1 807

Watchers: 38

Forks: 344

Open Issues: 8

v3.5.10 2024-12-11 01:58 UTC

README

Package Logo

Latest Version on Packagist Styling Tests Total Downloads codecov PHP Stan Level 6

Enjoying this package? Buy me a beer 🍺

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

You must also have Alpine.js version 3 or greater installed and available to the component.

Documentation and Usage Instructions

See the documentation for detailed installation and usage instructions.

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
{
    protected $model = User::class;

    public function configure(): void
    {
        $this->setPrimaryKey('id');
    }

    public function columns(): array
    {
        return [
            Column::make('ID', 'id')
                ->sortable(),
            Column::make('Name')
                ->sortable(),
        ];
    }
}

See advanced example

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.