Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

gabriel27's avatar

Hide sidebar in filament 3 page

Hello,

I have a Filament 3 app. I need to create a page that does not require log in and does not show the sidebar menu and top bar with the profile button.

I managed to create a page that does not require log in using the routes.

I do not want to create a new panel for this page to set the no panel. Is there any option to do this?

Thank you.

0 likes
4 replies
LaryAI's avatar
Level 58

To hide the sidebar and top bar in a specific Filament 3 page without creating a new panel, you can customize the layout for that particular page. Here's a step-by-step solution:

  1. Create a Custom Layout: Create a custom layout that does not include the sidebar and top bar. You can extend the default layout and remove the parts you don't need.

  2. Apply the Custom Layout to Your Page: Use the custom layout for the specific page you want to hide the sidebar and top bar.

Here's an example of how you can achieve this:

Step 1: Create a Custom Layout

Create a new Blade file for your custom layout, for example, resources/views/layouts/custom.blade.php:

<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>{{ config('app.name') }}</title>
    @vite(['resources/css/app.css', 'resources/js/app.js'])
</head>
<body class="antialiased">
    <div class="min-h-screen bg-gray-100">
        <!-- Your custom content without sidebar and top bar -->
        @yield('content')
    </div>
</body>
</html>

Step 2: Apply the Custom Layout to Your Page

In your Filament page class, specify the custom layout. For example, if you have a page class MyCustomPage, you can do the following:

namespace App\Filament\Pages;

use Filament\Pages\Page;

class MyCustomPage extends Page
{
    protected static string $view = 'filament.pages.my-custom-page';

    public function render()
    {
        return view('filament.pages.my-custom-page')->layout('layouts.custom');
    }
}

Step 3: Create the Page View

Create the view file for your custom page, for example, resources/views/filament/pages/my-custom-page.blade.php:

@extends('layouts.custom')

@section('content')
    <div class="container mx-auto py-8">
        <h1 class="text-2xl font-bold">My Custom Page</h1>
        <p>This is a custom page without the sidebar and top bar.</p>
    </div>
@endsection

Step 4: Define the Route

Ensure you have defined the route for your custom page in your routes/web.php:

use App\Filament\Pages\MyCustomPage;

Route::get('/my-custom-page', MyCustomPage::class)->name('my-custom-page');

This setup will render your custom page without the sidebar and top bar, using the custom layout you created. You can further customize the layout and content as needed.

1 like
jaseofspades88's avatar

Sounds like you've done what you need to, created a custom page. The documentation for custom pages is very thorough.. it does however seem more like you're trying to create your own page and sprinkle in bits of Filament. What features of Filament do you need when logged out?

Perhaps think more of 'What features of Filament do I need and where?' and then we can help some more...

gabriel27's avatar

@jaseofspades88 Thank you for the reply. I need from Filament the forms and general design (meaning the form design like fields, sections,... but not page).

I tried to create the custom layout like the AI said but the vite was not working properly or something because the css and js did not load.

I just have a custom page without the sidebar and title bar and with just a form from Filament.

Please or to participate in this conversation.