Filament Tables TALL Stack Component
Published on by Paul Redmond
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!