Version

Theme

NOTE

You are currently viewing the documentation for Filament 4.x, which is currently in beta and is not stable. Breaking changes may be introduced to releases during the beta period. Please report any issues you encounter on GitHub.

Looking for the current stable version? Visit the 3.x documentation.

Tables

Empty state

Introduction

The table’s “empty state” is rendered when there are no rows in the table.

Table with empty state

Setting the empty state heading

To customize the heading of the empty state, use the emptyStateHeading() method:

use Filament\Tables\Table;

public function table(Table $table): Table
{
    return $table
        ->emptyStateHeading('No posts yet');
}
Table with customized empty state heading

Setting the empty state description

To customize the description of the empty state, use the emptyStateDescription() method:

use Filament\Tables\Table;

public function table(Table $table): Table
{
    return $table
        ->emptyStateDescription('Once you write your first post, it will appear here.');
}
Table with empty state description

Setting the empty state icon

To customize the icon of the empty state, use the emptyStateIcon() method:

use Filament\Tables\Table;

public function table(Table $table): Table
{
    return $table
        ->emptyStateIcon('heroicon-o-bookmark');
}
Table with customized empty state icon

Adding empty state actions

You can add Actions to the empty state to prompt users to take action. Pass these to the emptyStateActions() method:

use Filament\Actions\Action;
use Filament\Tables\Table;

public function table(Table $table): Table
{
    return $table
        ->emptyStateActions([
            Action::make('create')
                ->label('Create post')
                ->url(route('posts.create'))
                ->icon('heroicon-m-plus')
                ->button(),
        ]);
}
Table with empty state actions

Using a custom empty state view

You may use a completely custom empty state view by passing it to the emptyState() method:

use Filament\Tables\Table;

public function table(Table $table): Table
{
    return $table
        ->emptyState(view('tables.posts.empty-state'));
}
Edit on GitHub

Still need help? Join our Discord community or open a GitHub discussion

Previous
Grouping rows