Skip to content

CodepotatoLtd/laravel-livewire-tables

 
 

Repository files navigation

Package Logo

Latest Version on Packagist Styling Tests Total Downloads

A dynamic Laravel Livewire component for data tables.

Full Table

This plugin assumes you already have Laravel Livewire and Alpine.js installed and configured in your project.

Installation

You can install the package via composer:

composer require rappasoft/laravel-livewire-tables

Usage

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();
    }
}

To-do/Roadmap

  • Bootstrap 4 Template
  • Bootstrap 5 Template
  • Sorting By Relationships
  • Collection/Query Support
  • Test Suite (WIP)
  • Column Search
  • Greater Configurability

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.

About

A dynamic table component for Laravel Livewire

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Blade 53.7%
  • PHP 46.3%