Skip to main content

Overview

Pages let you create custom admin interfaces beyond the standard resource CRUD operations. They’re useful for dashboards, reports, bulk operations, and other specialized functionality.

Creating a Page

Use the Filament command to create a page:
php artisan make:filament-page Dashboard
This generates a page class in src/Filament/Pages.

Page Structure

A basic page contains:
namespace Esign\UnleashCommerce\Admin\Filament\Pages;

use Filament\Pages\Page;

class Dashboard extends Page
{
    protected static ?string $navigationIcon = 'heroicon-o-document-text';
    
    protected static string $view = 'filament.pages.dashboard';
}

Creating a View

Pages use blade templates located in resources/views/filament/pages/:
<x-filament::page>
    <div>
        <h1>My Custom Page</h1>
        <!-- Your content here -->
    </div>
</x-filament::page>
Control whether your page appears in navigation:
protected static ?string $navigationIcon = 'heroicon-o-home';
protected static ?string $navigationLabel = 'Dashboard';
protected static ?int $navigationSort = 1;

Performance

For pages with heavy data requirements, consider caching and pagination to keep performance optimal.

Documentation

Learn more in the Filament Pages documentation.