Articles | Mohamed Said      [Skip to content](#main)  [ ![](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MH.png) Mohamed SaidLaravel Backend Engineer ](https://msaied.com) - [Home](https://msaied.com)
- [Projects](https://msaied.com/projects)
- [Articles](https://msaied.com/articles)
- [Certificates](https://msaied.com/certificates)
- [About](https://msaied.com#about)

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

Menu
----

Close 

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

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

  1. [Home](https://msaied.com)
2. /
3. Articles

  Engineering library
====================

 19 articles by Mohamed Said on Laravel, PHP, databases, APIs and infrastructure, written from production work.

 Search articles ⌕×Search 

    Topic hubs
----------

←→

- [AI48 articles](https://msaied.com/articles?category=ai&search=resources&sort=new)
- [Composer Pacakge81 articles](https://msaied.com/articles?category=composer-pacakge&search=resources&sort=new)
- [Filament27 articles](https://msaied.com/articles?category=filament&search=resources&sort=new)
- [Laravel268 articles](https://msaied.com/articles?category=laravel&search=resources&sort=new)
- [Livewire13 articles](https://msaied.com/articles?category=livewire&search=resources&sort=new)
- [Open Source44 articles](https://msaied.com/articles?category=open-source&search=resources&sort=new)
- [PHP28 articles](https://msaied.com/articles?category=php&search=resources&sort=new)
- [Tips &amp; Tricks32 articles](https://msaied.com/articles?category=tips-tricks&search=resources&sort=new)

  Topics
------

 [All topics](https://msaied.com/articles?search=resources&sort=new) [AI 48](https://msaied.com/articles?category=ai&search=resources&sort=new) [Composer Pacakge 81](https://msaied.com/articles?category=composer-pacakge&search=resources&sort=new) [Filament 27](https://msaied.com/articles?category=filament&search=resources&sort=new) [Laravel 268](https://msaied.com/articles?category=laravel&search=resources&sort=new) [Livewire 13](https://msaied.com/articles?category=livewire&search=resources&sort=new) [Open Source 44](https://msaied.com/articles?category=open-source&search=resources&sort=new) [PHP 28](https://msaied.com/articles?category=php&search=resources&sort=new) [Tips &amp; Tricks 32](https://msaied.com/articles?category=tips-tricks&search=resources&sort=new)    19 articles
------------

Topics    Sort articles Newest first  Oldest first  Sort  

 [Search: resources ×Remove search](https://msaied.com/articles?sort=new) [ Clear filters](https://msaied.com/articles) 

  [![](https://cdn.msaied.com/793/9ec9d2cf138593ecc4292fa9fa49ee7a.png)](https://msaied.com/articles/testing-filament-resources-actions-and-form-assertions-with-pest-5)18 Oct 2026·3 min read 

### [Testing Filament Resources, Actions, and Form Assertions with Pest](https://msaied.com/articles/testing-filament-resources-actions-and-form-assertions-with-pest-5) 

 A practical guide to writing expressive, maintainable Pest tests for Filament v4 resources — covering list tables, create/edit forms, custom actions, and authorization assertions without brittle DOM selectors.

   [![](https://cdn.msaied.com/710/4f310773d50e6b3a7ab53e64d3e76921.png)](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-conditional-relationships-and-cursor-pagination)27 Sep 2026·3 min read 

### [Laravel API Resources: Sparse Fieldsets, Conditional Relationships, and Cursor Pagination](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-conditional-relationships-and-cursor-pagination) 

 Go beyond basic JsonResource usage. Learn how to implement sparse fieldsets, conditionally load relationships without N+1 issues, and wire up cursor pagination for high-throughput Laravel APIs.

   [![](https://cdn.msaied.com/655/efd33245cffa553c1dffba29721e0139.png)](https://msaied.com/articles/testing-filament-resources-actions-and-form-assertions-with-pest-4)11 Sep 2026·4 min read 

### [Testing Filament Resources, Actions, and Form Assertions with Pest](https://msaied.com/articles/testing-filament-resources-actions-and-form-assertions-with-pest-4) 

 A practical guide to writing reliable Pest tests for Filament v3 resources — covering table actions, form submissions, and infolist assertions without reaching for a browser.

   [![](https://cdn.msaied.com/606/93349b03f4527b9100157c6774bb4ce2.png)](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-cursor-pagination-and-per-route-rate-limiting)29 Aug 2026·4 min read 

### [Laravel API Resources: Sparse Fieldsets, Cursor Pagination, and Per-Route Rate Limiting](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-cursor-pagination-and-per-route-rate-limiting) 

 Go beyond basic JsonResource usage. This guide covers sparse fieldsets, cursor-based pagination for large datasets, and per-route rate limiting strategies that keep your Laravel API fast and predictable under load.

   [![](https://cdn.msaied.com/550/18c282cafc696a5836ca7e2d380d22ef.png)](https://msaied.com/articles/testing-filament-resources-actions-and-form-assertions-with-pest-3)15 Aug 2026·3 min read 

### [Testing Filament Resources, Actions, and Form Assertions with Pest](https://msaied.com/articles/testing-filament-resources-actions-and-form-assertions-with-pest-3) 

 Learn how to write precise, maintainable Pest tests for Filament v3 resources — covering table actions, form submissions, and authorization assertions without brittle selectors.

   [![](https://cdn.msaied.com/476/2fe247e6705cd8624395e9194ff80703.png)](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-conditional-relationships-and-stable-contracts)27 Jul 2026·3 min read 

### [Laravel API Resources: Sparse Fieldsets, Conditional Relationships, and Stable Contracts](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-conditional-relationships-and-stable-contracts) 

 Go beyond basic transformers. Learn how to implement sparse fieldsets, conditionally load relationships, and enforce stable API contracts using Laravel's Eloquent API Resources — without leaking domain internals.

   [![](https://cdn.msaied.com/426/a81430a378b2849b6fbecb8235b9119f.png)](https://msaied.com/articles/filament-v4-testing-with-pest-resources-actions-and-form-assertions)15 Jul 2026·3 min read 

### [Filament v4 Testing with Pest: Resources, Actions, and Form Assertions](https://msaied.com/articles/filament-v4-testing-with-pest-resources-actions-and-form-assertions) 

 A practical guide to testing Filament v4 panels using Pest — covering resource page assertions, table action dispatch, and form field validation without spinning up a browser.

   [![](https://cdn.msaied.com/408/3534df365ffb2c8f6c430180bfaba8f1.png)](https://msaied.com/articles/laravel-enum-casts-backed-enums-and-value-semantics-in-php-83)10 Jul 2026·1 min read 

### [Laravel Enum Casts, Backed Enums, and Value Semantics in PHP 8.3](https://msaied.com/articles/laravel-enum-casts-backed-enums-and-value-semantics-in-php-83) 

 PHP 8.3 backed enums combined with Laravel's native enum casting unlock type-safe domain models. Learn how to wire enums into Eloquent, validation, and API resources without ceremony.

   [![](https://cdn.msaied.com/400/67fe9d3c6c505a6f67092e2761690696.png)](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-conditional-relationships-and-versioning-1)9 Jul 2026·3 min read 

### [Laravel API Resources: Sparse Fieldsets, Conditional Relationships, and Versioning](https://msaied.com/articles/laravel-api-resources-sparse-fieldsets-conditional-relationships-and-versioning-1) 

 Go beyond basic transformers. Learn how to implement sparse fieldsets, conditionally load relationships, and version your API resources without duplicating transformation logic across your Laravel application.

   ← Newer1. 1
2. [2](https://msaied.com/articles?search=resources&page=2)
3. [3](https://msaied.com/articles?search=resources&page=3)

 1 / 3 [Older →](https://msaied.com/articles?search=resources&page=2)   

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

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

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

Topics
------

Close 

 [All topics](https://msaied.com/articles) [AI (48) ](https://msaied.com/articles?category=ai&search=resources&sort=new) [Composer Pacakge (81) ](https://msaied.com/articles?category=composer-pacakge&search=resources&sort=new) [Filament (27) ](https://msaied.com/articles?category=filament&search=resources&sort=new) [Laravel (268) ](https://msaied.com/articles?category=laravel&search=resources&sort=new) [Livewire (13) ](https://msaied.com/articles?category=livewire&search=resources&sort=new) [Open Source (44) ](https://msaied.com/articles?category=open-source&search=resources&sort=new) [PHP (28) ](https://msaied.com/articles?category=php&search=resources&sort=new) [Tips &amp; Tricks (32) ](https://msaied.com/articles?category=tips-tricks&search=resources&sort=new)  

  © 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://msaied.com)
- [Articles](https://msaied.com/articles)
- [Certificates](https://msaied.com/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://msaied.com/sitemap.xml)
