aminsamadzadeh/simorgh
Simorgh is a Laravel package that provides a flexible, developer-friendly toolkit for building PHP applications. It offers reusable components and simple configuration to reduce boilerplate, streamline common backend tasks, and help teams ship maintainable Laravel projects faster.
where/orderBy/with clauses. That makes it a useful reference point when deciding how much of your filtering, sorting, and relation-loading behavior should be generic infrastructure versus hand-written per endpoint.filter[status]=active, sort=-created_at, include=comments). That grammar becomes part of your public API surface — it affects documentation, client SDKs, backward compatibility, and how easy it is to add new filterable fields later. This is a product decision, not just a technical one.Consider it only if:
Look elsewhere when:
spatie/laravel-query-builder (explicit allowedFilters/allowedSorts, actively maintained, well-documented) or tucker-eric/eloquentfilter.To executives: "There's an open-source shortcut for a very common API feature — turning URL filters into database queries — that could save a few days on list and detail endpoints. The catch is that the project has 11 stars and hasn't been updated since late 2020, so we'd be adopting code nobody maintains, including security fixes, on a stack that has moved several major versions since. My recommendation is not to adopt it as a dependency. We'll use it as a design reference and spend roughly a day building a small internal version with strict allowlists that we fully control — same velocity benefit, no unmaintained code in the critical path."
To engineering: "It's convention-over-configuration for request→Eloquent. Before anyone evaluates it further: unmaintained since 2020, unverified Laravel 10/11 and PHP 8.2+ support, no visible test or security posture, and the core mechanic — letting request input drive column and relation names — needs a hard allowlist or it's a liability. The risk-adjusted cost is likely higher than writing a ~150-line trait with allowedFilters/allowedSorts. If we do want a package rather than our own, spatie/laravel-query-builder is the safer, maintained choice."
How can I help you explore Laravel packages today?