Filament 5 in Depth
Filament's powers have increased exponentially. Now at version 5, it's more powerful and capable than ever. In this series, we'll build a practical Roadmap app from scratch, using Filament for the admin panel and Livewire for the public-facing side.
Along the way, we'll cover panel configuration, enum-driven UI, strict authorization with policies, and newer form inputs like ToggleButtons, Sliders, and the TipTap-powered RichEditor. By the end, you'll have a full-featured app and a solid handle on everything new in Filament.

Progress
Series Info
- Episodes
- 16
- Run Time
- 3h 40m
- Difficulty
- Intermediate
- Last Updated
- Feb 24, 2026
- Version
- Latest
Series Episodes
- Setup and Configuration (5)
Filament Panel Installation and Resources
Learn how to install Filament 5 and start using the Filament panel builder for the backend of your application.Enums in Filament
Filament has a lot of special treatment for Enums, and we want to take advantage of that in our application. Learn to use Enums and make them look pretty.Panel Configuration
Filament has a lot of features out of the box, and you get to decide which ones you want to use. Let's review the various options and even learn how to extend the provided classes for custom functionality.Service Provider Configuration
Filament is nice out of the box, but we can configure different Filament classes in a service provider to further enhance and customize our experience. To get the full gist of better presets for Filament, see herePolicies and Strict Authorization
It is important to check if a user has the ability to perform an action before showing them the button in the UI. Filament handles this for you, and using the->strictAuthorization()config option will ensure all standard Filament actions are authorized.
- Forms and Layout (5)
ToggleGroup, Slider, and RichEditor
There are three new form inputs from Filament 4 that you may want to use in your app. We will review ToggleGroup which is a better radio input, a slider and the very powerful RichEditor powered by TipTap.visibleJs
Conditionally showing and hiding form fields usually requires a Livewire round trip, but visibleJs and hiddenJs let you handle it entirely on the front end for a much snappier experience. Learn the rules for writing expressions that evaluate correctly, and how to handle backend validation for required fields that the user may not even see.afterStateUpdatedJs
Learn how to make form fields interactive. It starts with a PHP/Livewire approach using afterStateUpdated, then shifts to the front-end with afterStateUpdatedJs to avoid network requests for simple calculationsTheme and Layout
Filament has many options to update the visual layout of your forms. Let's review some options including breaking our sections into tabs.Table Repeater
The Repeater class with the ->table() modifier is one of the most useful form inputs available, and it can be used to handle both arrays of data and relationships. Once the data is created, it can be rendered beautifully with the RepeatableEntry.
- Views and Public UI (3)
Infolist
Filament infolists share the same schema approach as forms, so if you already know how to build a form you are most of the way there. We will break the view page into clean sections, render rich text content safely using prose, and style everything with enum badges for a polished result.Comments and Votes
Let's go back to basics and create models for Comment and Vote along with their relationships. We need these to create the public facing site. We will also create Filament relation managers to display the data.Using Filament in a Livewire Component
We have a nice UI for the front end of our application. Let's use Filament to handle the comment submissions. There were a lot of changes made since the list video behind the scenes, and you can see those changes here - https://github.com/laracasts/filament-5-in-depth/pull/1
- Advanced Workflow (3)
Tables with Bulk Action Authorization
Bulk actions can be risky, because you cannot be sure if the user is allowed to make certain changes until the records are being processed. Learn to authorize the record for each action before processing anything.Custom Data Table and API Integration
Filament now provides the ability to create tables without relying on an Eloquent model. Let's use that to pull in data from an API to create Feature records.Filament Website and Plugins
The Filament website is brand new for Filament 5 and has great information to help you continue your journey with building web apps with Filament.