Filament Tables TALL Stack Component

Packages

March 31st, 2022

Filament Tables TALL Stack Component

The Filament Table Builder is a TALL stack table component. You can use this table component as a standalone package, and it's also included with the Admin Panel.

Using the package's HasTable interface and InteractsWithTable trait, you can quickly build a table backed by an Eloquent query that you define:

namespace App\Http\Livewire;
 
use App\Models\Post;
use Filament\Tables;
use Illuminate\Contracts\View\View;
use Illuminate\Database\Eloquent\Builder;
use Livewire\Component;
 
class ListPosts extends Component implements Tables\Contracts\HasTable
{
use Tables\Concerns\InteractsWithTable;
 
protected function getTableQuery(): Builder
{
return Post::query();
}
 
public function render(): View
{
return view('list-posts');
}
}

Beyond the basics, this package supports features that'll make implementing an interactive table with Livewire a cinch:

  • Customizable pagination
  • Record searching via Laravel Scout
  • Clickable rows
  • Empty state
  • Store table state in the query string
  • Table column types (text column, image column, boolean column, etc.)
  • Table filters
  • Table actions
  • Bulk actions

If you'd like to learn more about using the Filament Tables package with the TALL stack, check out the Table Builder documentation to get started!

Filed in:

Paul Redmond

Full stack web developer. Author of Lumen Programming Guide and Docker for PHP Developers.