Help Us Improve Filament’s Docs & Education in v4
Hey everyone! As we gear up for Filament v4, one of our big priorities is rewriting the documentation to make it clearer, more complete, and easier to navigate. At the same time, we’re planning a wider education strategy, probably including official video courses.
But we need your help! If you've learned Filament - whether recently or way back in v1 - what were the biggest pain points?
🔸 What parts of the docs confused you or felt incomplete?
🔸 What concepts took you the longest to understand?
🔸 What would have helped you get productive with Filament faster?
One thing we are for sure improving is the accessibility of the "utility injection" parameters you have available in each configuration function. In v4 it will be clear exactly which can be injected in each function.
Some topics might not fit perfectly in the docs, but they could be covered in video examples - so if you’ve ever thought, "I wish there was a video demonstrating a use case for X!", let us know!
We want to make sure Filament v4 is as accessible as possible, whether you're building your first admin panel or scaling a complex multi-panel app. Your feedback will directly shape the next generation of learning resources.
Drop your thoughts in the comments! We’re listening.
56 Replies
I'm quite new at using Filament (two or three weeks ago) and the documentation is really relevant and helpful, it's easy to understand and quite complete, maybe add some videos would be great since Filament is very visual and understandable in videos we can find.
In any case thank you for your work, it has revolutionized my way of working with php
My biggest problem when I started was the documentation related to customizations. When I wanted to create custom components or custom views, I always ran into quite a few problems with this since the documentation in that sense was scarce.
This was largely fixed in v3 thanks to the "Adding to a Livewire component" sections, but it's still pretty sparse, and it could still be developed a little more in that regard.
In general I see the rest very well.
Just interested - for custom components did the Laracasts videos help you (if you watched them)? I do want to incorporate this content into text format.
No, I didn't know about those videos.
Ah ok! They are embedded in the documentation. Take a look at "Custom fields" for example.
Thanks! Good to know.
I struggled with the ubiquitous naming of Actions. In the beginning, determining whether I was in the right documentation place, dependent on which type of 'Action' I was trying to work with.
Also, I felt some more images would have helped.
In v4 there is only one type of Action :)
Having said that, I have managed to utilise a great deal of it in less than 5 months....so from my view the documentation is effective and doesn't need a complete overhaul.
It may be just personal preference but I would love to have more images overall and yea videos.
You already mentioned a complete overhaul of the "test" docs, which are very welcomed, those were too scattered across the current docs imho. Probably way too much off-base but showing an interactable example of components and features etc. could be a delight. Like showing the actual rendered component (like flux ui) with the current option from the docs (if that makes sense) 😋
You already mentioned a complete overhaul of the "test" docs, which are very welcomed, those were too scattered across the current docs imho. Probably way too much off-base but showing an interactable example of components and features etc. could be a delight. Like showing the actual rendered component (like flux ui) with the current option from the docs (if that makes sense) 😋
Yeah I highly doubt we will do interactive examples (we would need to move away from Astro for our docs, which provides us with a ton of extra functionality), but I am looking at adding more screenshots.
I hope new docs, add example with screenshots more and more.
i had the same issue
This is not a good fit for the docs, but I would love to see one of the content creators make a tier list of filament customization options ranked in terms of effort it takes. maybe one for tables, one for forms etc.
First off, quality of the docs is pretty decent right now but great you guys look to improve. As a hobbyist developer myself I struggled a little with how to prevent duplicating code. Complicated form fields or table columns or complete forms for example. Had a hard time figuring out what the best approach to this issue was. Would be great to have some examples on this topic.
Yeah its great already, what helped me understand the most was the advanced forms examples and for understanding livewire and customizing things it really helped looking through https://github.com/andrewdwallo/erpsaas so maybe include some more advanced examples. I actually started learning Laravel directly with filament and honestly it felt like cheating, I was going so fast!, I only did plain php before (boss created his own (horrible🤣, xslt, soap etc) framework on my old job.
GitHub
GitHub - andrewdwallo/erpsaas: A Laravel and Filament-powered accou...
A Laravel and Filament-powered accounting platform, crafting a modern and automated solution for financial management. - andrewdwallo/erpsaas
From my perspective, as mentioned above, adding some minor customizations for components and highlighting aspects that were harder to find in the documentation—yet surfaced through community discussions—would be beneficial.
The biggest issue I encountered was with broadcasting. I feel that the documentation in this area could be expanded, particularly around broadcast configuration. This is where I believe improvements to the docs would be most valuable. Additionally, it would be helpful to see more examples of where broadcasting could be implemented, such as in navigation badges, dynamic UI elements, or other interactive components that rely on real-time updates.
I think the documentation indexing needs some tweaking. Search for databaseNotificationsPolling and nothing found. Goto this page
https://filamentphp.com/docs/3.x/panels/notifications#setting-up-websockets-in-a-panel
and you'll see databaseNotificationsPolling('30s')
Pretty sure this is a common issue with not finding code that is there. That would be a useful fix.
Perhaps you could treat the demo as more of a collection of interactive examples? Add a bunch of new resources for things that aren't currently in there (like the builder field), implement broadcasting etc. Could link to specific URLs from the docs and people can code dive on the repo too.
Or if you want to keep the demo clean, maybe a separate examples app to go alongside the docs
Update documentation about Action Filament:
1. Filament Actions vs Laravel Actions
- Is there any documentation explaining the difference between Filament actions and Laravel actions? If such an explanation exists, it would be really helpful.
2. Injecting
- How can I inject
- In some cases, I want my business logic—such as creating a user in the database, sending an email, notifying the admin, etc.—to reside in
- If there is any official guidance on this, that would be great.
3. Getting the current model in
- How can I get the current model's data inside
- I need to pass the current model's data to the modal form inside the action.
- Is there any documentation related to this?
4. Missing
- It seems like there is no
- Are there any plans to introduce this command?
- Is there any documentation explaining the difference between Filament actions and Laravel actions? If such an explanation exists, it would be really helpful.
2. Injecting
app/Actions/CreateUser.php
into Filament\Actions\CreateAction::make()
- How can I inject
app/Actions/CreateUser.php
into Filament\Actions\CreateAction::make()
?- In some cases, I want my business logic—such as creating a user in the database, sending an email, notifying the admin, etc.—to reside in
app/Actions/CreateUser.php
.- If there is any official guidance on this, that would be great.
3. Getting the current model in
EditAction
- How can I get the current model's data inside
EditAction
?- I need to pass the current model's data to the modal form inside the action.
- Is there any documentation related to this?
4. Missing
php artisan make:filament-action
- It seems like there is no
php artisan make:filament-action
command yet.- Are there any plans to introduce this command?
Not sure how it can be helped, but I routinely google something looking for a specific part in docs, and inevitably v2 is the top hit. I suspect the same will happen with v3 when v4 is released
Maybe some auto forwarding to v4 docs (user opt in)
A small win could be including the version number in the title google displays?
Yeah definitely including some "best practices" for this in the docs, but the developer is still free to choose what the best abstraction is for them
At the moment broadcasting is only limited to notifications, hence why the docs are only there
Yeah definitely looking to rewrite the demo
Thanks
@Dan Harrin first, amount of work and craft in Filament is outstanding 🔥
From our small team perspective I can say that getting into Filament really fast to get going (we started in Dec 2023). When I try recall our experience from then:
- it was our first contact with Livewire (I believe that it's very common when starting with :filament: )
- at the very beginning I remember that having only ResourceManager for a whole CRUD felt magical and we had problems with extending create/update actions
- having many implementations of the Actions classes depending on a usage (form, table) and sharing logic between them (I saw in v4 you have tackled this), common when you have same "functionality" in a table and update form
- sometimes new devs have problems with understanding a role of mount, fillForm and it's impact on default values 🙂
Thanks!
The docs are great - for me personally I would have loved some more examples, especially around the form action models - ran into a few things that took me longer to troubleshoot than I would care to admit haha - the advanced forms cookbook was fantastic. Maybe it could be an idea to have somewhere to suggest things to add to those - would require review but could be helpful?
No problem, tbh I see that there's a whole bunch of work at you 🤯 ... I agree with lmtc that docs are great.
One more suggestion for later (like 4.1+++), we could have a chapter about advanced usage and how to approach larger codebases. For example we have large table with lots of filters (also dependent ones) - yolo mode with over 1000 loc of a table function. While it works, sometimes we dont understand why, because of all of the closures. Right now we try to make it cleaner 🙂
From a filament project perspective such guidelines for advance usage will result in more projects that are maintainable, therefor filament will have better opinion on the market as an option for larger projects 💪

yeah I am looking at documenting how to extract filters, columns, etc into their own classes for maintainability
😄
at the moment have you tried just creating some PHP classes with a static make() method and returning a Filter from there?
and then calling YourClass::make() from the table
yup, static function that encapsulate logic.
still we discuss if we should pass $get, $set vs concrete values etc.
but it's a matter of agreement in a team....
you can still access that from functions passed into the class
i would avoid passing concrete values as they can become out of date and cause issues at runtime
$get() will ensure you always have the most up to date values
it makes sense 👍
@Dan Harrin I have watched the "Rapid Laravel Apps With Filament" by Kevin McKee and am now working through that course.
I have also watched your course "Build Advanced Components for Filament". I think both are outstanding and are well suited for my particular learning style.
I would say maybe some courses like Larabits on new or particular/advanced sections would be really nice.
hi. to answer question "What parts of the docs confused you or felt incomplete?", this code example is confusing for me. It's not clear in which method or class I should be adding this thing or what it really does. Entire page mentions "infolists show data!" but honestly, resources also show data. This is not explaining anything. currently joined discord to understand what infolists actually do because documentation was not that good imo. thanks for creating Filament though! it's awesome.

Thanks! Its difficult to explain. They are like form fields, but read-only and are more suited to being read-only (there is no ring around the input, for example)
ive tried to write it down many times and failed
I would agree with @OtziDeMajour on some confusion for newcomers. One particular was finding a way to just show a value in a form and not an input. I was looking trying to find some sort of TextEntry for a form.
I searched the docs and didn't find anything particularly helpful outside of labels for form components (which doesn't fit the need). It is not easy to find the Placeholder form component as it is not listed as a form component. I did however find the answer by searching the help here before posting a question.
in v4 you can use a textentry in a form, since forms and infolists are the same thing
Small suggestion, even though its not directly related to filament, it would be great if its mentioned in form builder docs that whenever you have
TextInput::make('name')
for example, you should create a string name
column in the migration of the model table. This might be great for laravel newcomers. I couldnt find any info about this in the v3 docs, so I guess for now its impliedtechnically it only applies to resources, there are quite a few instances where input names dont translate into models
Thanks for your work about that!
On my side (experienced laravel/vue/react user and contributor, and pretty new to livewire and filament (several months)), I miss:
- real life cycle schemas with examples to understand what's really happening and when (in components, resources, forms, etc),
- not especially expecting people to be Livewire masters when starting with Filament.
- examples of customisation, to exit the basic crud, including more details about using the components outside of resources. (In standard blade views, for example)
- explanations how to get hot reloading, custom scripts, and a proper tailwind setup to use our own classes (focused around built theme, that seamed irrelevant to me, I ended up adding directly vite directive in Render hooks).
- Links between all the filament packages. When you get the whole thing, you have to switch between all the categories and rummage around to find the information you're missing, with bits and pieces in several places.
- in place documentation: each public function in Laravel has a comment with some doc. I miss that in Filament.
- Free documentation. I really understand the need of having a business model, but it's difficult to help people get started with paid content (thinking of Laracast)
- Content about what's happening behind the scene technicaly, to reduce the magic feeling.
thanks. note: themes are the way to compile extra Tailwind classes, you should use that
and I'm not sure what you mean about free documentation, all our documentation is free
- Sorry, I mixed things as I made it months ago. I'm using viteTheme function for the css (but to refer the css main file of my app. I don't need a special configuration per panel). It's for the scripts, and auto-refresh that I used render hooks. I don't want to have to build them to use them in local, so I'm using the standard vite server. I can share a project publicly if you want to check it out and see if I could have done it differently.
- If I'm not wrong, most of the videos directly linked in the docs are not free (again, I can understand why).


Yeah considering the hundreds of hours I have spent writing ~100k words of the current free documentation, I think it's incredibly fair to charge for paid, optional video courses
so that won't change, and I expect our new video course/s to be paid also (there might be one or two free, I'm not sure)
As said, I totally understand the need of a business model, I was sharing it among the other points. 🙂
@Dan Harrin I have watched the laracast custom component and was very helpful. what I find difficult to understand is the custom page and the different scenarios that you can have some custom pages are under resources others can be resource independent. routing to the custom page I think those parts need to be clarified if there is a educational tutorials for v4 I believe it would help a lot for new comers like me.
I second that the "advanced components" episodes are great, and do have content that you can't find (easily) in the written documentation.
I once had upgraded a middle sized Filament app (~10+ Resources) from v2 to v3 using the automated upgrade script that had been provided. Succeeded after a few days. Would be 😎 if the transition from v3 to v4 would also have an upgrade script.
Also, the necessary changes sorted by "impact probability" was really nice and helped me updating.
@Dan Harrin do you think upgrading from v3->v4 will be more difficult (more breaking changes?) than v2->v3 ?
its about the same, it also has an upgrade script
honestly, you did a wonderful work with the documentation and I understand why infolists are a bit hard to explain. That being said, I believe providing a usage example would basically let people understand what it is easily. Something like "for example, you might have a library management app and if you wanted to have a book detail page that's read-only, you could use infolists to show data related to that book. Basically it's part of the 'Read' of CRUD"
🤷 idk if this sounds OK & explains well but just wanted to try 😄
need more real world examples
Agreed. Fuller examples would be great. I had particular difficulty understanding how to use the Filament blade components. Is the doc site open source, I'd be happy to make some suggestions, I have quite a few notes from my journey today ( #Advice: Building a "unified" platform. )
GitHub
filament/packages/support/docs/09-blade-components at 3.x · filamen...
A collection of beautiful full-stack components for Laravel. The perfect starting point for your next app. Using Livewire, Alpine.js and Tailwind CSS. - filamentphp/filament
Some more simple code snippets like in the "Advanced forms, reactivity cookbook" would be nice. Sometimes there's small features which are handy like form fields only visible on create / edit page, or programmatically saving a resource edit page with
->before(fn ($livewire) => $livewire->save())
for exampleYeah, @Illizian asked where he could submit suggestions.
Ah, sorry