
Change the default page instead of Dashboard for Panels
- Published: 26 Mar 2025 Updated: 26 Mar 2025
set any page like List Or view page as the main page instead of using a dashboard page in filamentPHP

in some cases you want the default page in the /
route to be something else, like a list page for a resource, here is how you can do it:
Using Custom Login Response:
you can create a `CustomLoginResponse` and redirect the users after login to that page:
1class CustomLoginResponse extends LoginResponse
2{
3 public function toResponse($request): RedirectResponse|Redirector
4 {
5 return redirect()->intended(YourResource::getUrl());
6 }
7}
and register it in your panel provider:
1return $panel
2 ->bootUsing(function (): void {
3 app()->bind(LoginResponse::class, CustomLoginResponse::class);
4 })
Thanks to Leandro Ferreira for the idea
Using Laravel Routes:
you can redirect the user to the resource you want when they access the /
page:
1Route::redirect('/admin/', '/admin/users');
Changeing the slug for the resource:
you can set the slug
for your class, for example let say you want the users to be redirected to the List Users page:
set the slug in the ListUsers
1protected static ?string $slug = '/';
and in you panel provider, disable the dashboard page and add the ListUsers:
1->pages([
2 //Pages\Dashboard::class,
3 UserResource\Pages\ListUsers::class
4])

Related Tricks:
how to use an action as a headerAction or as a table row action without code duplication
you can disable breadcrumbs inside a resource class
This time-saving starter kit provides a Laravel project with FilamentPHP already installed and configured, so you can dive straight into building without any of the initial setup headaches.
add locale parameter to all of your filament panel
Let Users to Select All Options with a Simple Hint Action