Filament v4.13.0: Deferred Schema, Session Grouping &amp; More | Mohamed Said       [Skip to content](#main)  [ ![](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MH.png) Mohamed SaidLaravel Backend Engineer ](https://www.msaied.com/public) - [Home](https://www.msaied.com/public)
- [Projects](https://www.msaied.com/public/projects)
- [Articles](https://www.msaied.com/public/articles)
- [Certificates](https://www.msaied.com/public/certificates)
- [About](https://www.msaied.com/public#about)

           [  Contact](https://www.msaied.com/public#contact) Menu 

Menu
----

Close 

 - [HomeStart here](https://www.msaied.com/public)
- [ProjectsCase studies](https://www.msaied.com/public/projects)
- [ArticlesEngineering notes](https://www.msaied.com/public/articles)
- [CertificatesCredentials](https://www.msaied.com/public/certificates)
- [AboutHow I work](https://www.msaied.com/public#about)
- [ContactGet in touch](https://www.msaied.com/public#contact)

  [Start a conversation](https://www.msaied.com/public#contact) [WhatsApp](https://wa.me/201094619204) [Email](mailto:hello@msaied.com) 

 1. [Home](https://www.msaied.com/public)
2. /
3. [Articles](https://www.msaied.com/public/articles)
4. /
5. [Laravel](https://www.msaied.com/public/articles?category=laravel)
6. /
7. Filament v4.13.0 Released: Deferred Schema Loading, Session Grouping &amp; More

   [Laravel](https://www.msaied.com/public/articles?category=laravel) [Filament](https://www.msaied.com/public/articles?category=filament) 

 Filament v4.13.0 Released: Deferred Schema Loading, Session Grouping &amp; More
================================================================================

 Filament v4.13.0 ships with deferred schema loading, persistent table grouping in the session, RichEditor min/max height, a reusable MultiFactorChallenge class, and a handful of important bug fixes.

 ![](https://cdn.msaied.com/01M22N44A70A5MC2S599JP0MPH.webp) [Mohamed Said](https://www.msaied.com/public#person) Published 7 Sep 2026 · Updated 8 Sep 2026 · 4 min read

ShareCopy linkCopied

 ![Filament v4.13.0 Released: Deferred Schema Loading, Session Grouping & More](https://cdn.msaied.com/642/400efa8dc790ea53fa0d52ed69e4f132.png) 

  On this page +1. [Filament v4.13.0: What's New](#filament-v4130-whats-new)
2. [Deferred Schema Loading](#deferred-schema-loading)
3. [Persist Table Grouping in the Session](#persist-table-grouping-in-the-session)
4. [RichEditor minHeight() / maxHeight()](#richeditor-codeminheightcode-codemaxheightcode)
5. [Reusable MultiFactorChallenge Class](#reusable-codemultifactorchallengecode-class)
6. [Trait-Named Lifecycle Hooks on Pages and Importers](#trait-named-lifecycle-hooks-on-pages-and-importers)
7. [Stats Empty State Behaviour](#stats-empty-state-behaviour)
8. [Custom Downloader for Laravel Vapor](#custom-downloader-for-laravel-vapor)
9. [Other Notable Changes](#other-notable-changes)
10. [Key Takeaways](#key-takeaways)

 Filament v4.13.0: What's New
----------------------------

Released on 7 September 2026, **Filament v4.13.0** is a feature-packed minor release that improves performance, developer ergonomics, and UI consistency across the framework. Here is a detailed look at every notable change.

---

### Deferred Schema Loading

The headline addition is **deferred schema loading**, contributed by [@KianAcquoy](https://github.com/KianAcquoy). Instead of evaluating an entire form or infolist schema on the initial page load, you can now defer that work until it is actually needed. This is particularly valuable for complex admin panels where some schemas are rarely visited, reducing both server-side rendering time and Livewire payload size.

---

### Persist Table Grouping in the Session

Tables that use grouping can now **persist the active group in the user's session**, thanks to [@IGedeon](https://github.com/IGedeon). Users no longer lose their grouping preference when they navigate away and return to a table — a small but meaningful UX win.

Alongside this, [@tanthammar](https://github.com/tanthammar) added a `direction` argument to `defaultGroup()`, giving you control over the default sort direction of a group straight from the table definition:

```php
->defaultGroup(
    Group::make('status')->direction('desc')
)

```

---

### RichEditor `minHeight()` / `maxHeight()`

[@pxlrbt](https://github.com/pxlrbt) added `minHeight()` and `maxHeight()` support to the `RichEditor` component, letting you constrain the editor's vertical size without resorting to custom CSS:

```php
RichEditor::make('body')
    ->minHeight('200px')
    ->maxHeight('600px')

```

---

### Reusable `MultiFactorChallenge` Class

[@webard](https://github.com/webard) introduced a reusable `MultiFactorChallenge` class, making it easier to share MFA challenge logic across different parts of your application without duplicating code.

---

### Trait-Named Lifecycle Hooks on Pages and Importers

[@oddvalue](https://github.com/oddvalue) added support for **trait-named lifecycle hooks** on pages and importers. This means traits can define hook methods that are automatically discovered and called, enabling cleaner composition of page behaviour without overriding base methods.

---

### Stats Empty State Behaviour

[@ahmed-rashad-alnaggar](https://github.com/ahmed-rashad-alnaggar) implemented **empty state behaviour for stats widgets**. You can now define what is displayed when a stat has no data, keeping your dashboards informative rather than showing a blank or zero value.

---

### Custom Downloader for Laravel Vapor

[@bretto36](https://github.com/bretto36) introduced a **Custom Downloader** interface, allowing teams running on **Laravel Vapor** (or other environments where direct file streaming is not possible) to plug in their own download logic.

---

### Other Notable Changes

- **Published assets added to `.gitignore` on install** — new installs will no longer accidentally commit compiled assets ([@chinmaypurav](https://github.com/chinmaypurav)).
- **No unsaved-changes alert for read-only action modals** — modals that cannot contain unsaved changes no longer trigger the browser warning ([@grafst](https://github.com/grafst)).
- **Laravel Boost Agent Skill** — the Laravel Boost guidelines have been converted into an agent skill for AI-assisted development ([@hackel](https://github.com/hackel)).
- **Collapsible desktop sidebar CSS fix** — `--collapsed-sidebar-width` is now correctly applied to collapsible desktop sidebars ([@PrestaEdit](https://github.com/PrestaEdit)).
- **Wizard next-action loading indicator scoped** — the loading indicator is now scoped to its own request, preventing false positives ([@people-sea](https://github.com/people-sea)).
- **Modal scroll fix** — opening a modal with no tabbable content no longer scrolls the page ([@lazerg](https://github.com/lazerg)).
- **Improved Composer autoload discovery** for `discover_app_classes()` ([@emyassine](https://github.com/emyassine)).
- **Sidebar horizontal scroll prevented** inside the image editor ([@mrleblanc101](https://github.com/mrleblanc101)).
- Translation updates for Spanish and Lus locales.

---

### Key Takeaways

- Defer expensive schema evaluation with the new deferred schema loading feature.
- Table grouping preferences now survive page navigation via session persistence.
- `RichEditor` gains `minHeight()` and `maxHeight()` for layout control.
- A reusable `MultiFactorChallenge` class simplifies MFA implementations.
- Laravel Vapor users can now supply a custom file downloader.
- Several UX and CSS bugs have been resolved in this release.

---

Full changelog and pull request details: 

- [Filament](https://www.msaied.com/public/articles?search=Filament)
- [Laravel](https://www.msaied.com/public/articles?search=Laravel)
- [PHP](https://www.msaied.com/public/articles?search=PHP)
- [Release Notes](https://www.msaied.com/public/articles?search=Release%20Notes)
- [Admin Panel](https://www.msaied.com/public/articles?search=Admin%20Panel)

 Frequently asked questions 
---------------------------

  What is deferred schema loading in Filament v4.13.0?Deferred schema loading allows Filament to postpone evaluating a form or infolist schema until it is actually needed, rather than processing it on every initial page load. This reduces server-side rendering time and Livewire payload size for complex admin panels.

   How does persistent table grouping work in Filament v4.13.0?When a user selects a grouping on a Filament table, that choice is now stored in their session. If they navigate away and return to the same table, the previously selected group is automatically restored, improving the overall user experience.

   Can I use Filament v4.13.0 on Laravel Vapor?Yes. Filament v4.13.0 introduces a Custom Downloader interface that lets you replace the default file download mechanism with your own implementation, which is necessary on environments like Laravel Vapor where direct file streaming is not supported.

   ![Mohamed Said](https://cdn.msaied.com/01M22N44A70A5MC2S599JP0MPH.webp)About the author
----------------

[Mohamed Said](https://www.msaied.com/public#person)Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

[About](https://www.msaied.com/public#about) [GitHub ↗](https://github.com/EG-Mohamed) [LinkedIn ↗](https://www.linkedin.com/in/msaiedm/) [WhatsApp ↗](https://wa.me/201094619204) [Email Address ↗](mailto:hello@msaied.com) [My CV ↗](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)  

   [Previous articleContextual Binding and Method Injection in Laravel's Service Container](https://www.msaied.com/public/articles/contextual-binding-and-method-injection-in-laravels-service-container-3) [Next articleFilament v5.8.0 Released: Deferred Schema Loading, Session Grouping &amp; More](https://www.msaied.com/public/articles/filament-v580-released-deferred-schema-loading-session-grouping-more)  

   On this page
-------------

1. [Filament v4.13.0: What's New](#filament-v4130-whats-new)
2. [Deferred Schema Loading](#deferred-schema-loading)
3. [Persist Table Grouping in the Session](#persist-table-grouping-in-the-session)
4. [RichEditor minHeight() / maxHeight()](#richeditor-codeminheightcode-codemaxheightcode)
5. [Reusable MultiFactorChallenge Class](#reusable-codemultifactorchallengecode-class)
6. [Trait-Named Lifecycle Hooks on Pages and Importers](#trait-named-lifecycle-hooks-on-pages-and-importers)
7. [Stats Empty State Behaviour](#stats-empty-state-behaviour)
8. [Custom Downloader for Laravel Vapor](#custom-downloader-for-laravel-vapor)
9. [Other Notable Changes](#other-notable-changes)
10. [Key Takeaways](#key-takeaways)

 ###  Have a technical challenge?

 Tell me what you’re building. I reply within two working days.

[Start a conversation](https://www.msaied.com/public#contact) 

   Related articles
-----------------

 [ ![](https://cdn.msaied.com/740/cce86edc21eddcbdd2f2454fadaf9c70.png)  · 3 min read### The Pipeline Pattern in Laravel: Custom Pipelines Beyond Middleware

5 Oct 2026 ](https://www.msaied.com/public/articles/the-pipeline-pattern-in-laravel-custom-pipelines-beyond-middleware-1) [ ![](https://cdn.msaied.com/739/2d6897fdcdcf090613f96f72a64b8a78.png)  · 4 min read### MySQL Full-Text Search in Laravel: Indexes, Relevance Scoring, and Boolean Mode

4 Oct 2026 ](https://www.msaied.com/public/articles/mysql-full-text-search-in-laravel-indexes-relevance-scoring-and-boolean-mode) [ ![](https://cdn.msaied.com/738/073696a3fefe18bec825beec5ac658f5.png)  · 4 min read### Laravel Queue Rate-Limited Middleware: Throttling Jobs Without Losing Work

4 Oct 2026 ](https://www.msaied.com/public/articles/laravel-queue-rate-limited-middleware-throttling-jobs-without-losing-work) 

  Have a technical challenge?
----------------------------

Tell me what you’re building. I reply within two working days.

 [Discuss your project ↗](https://www.msaied.com/public#contact) 

  © 2026 Mohamed Said · Built with Laravel, meant to last.Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

 - [Home](https://www.msaied.com/public)
- [Articles](https://www.msaied.com/public/articles)
- [Certificates](https://www.msaied.com/public/certificates)
- [GitHub](https://github.com/EG-Mohamed)
- [LinkedIn](https://www.linkedin.com/in/msaiedm/)
- [WhatsApp](https://wa.me/201094619204)
- [Email Address](mailto:hello@msaied.com)
- [My CV](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)
- [Sitemap](https://www.msaied.com/public/sitemap.xml)
