sylius/resource-bundle
SyliusResourceBundle provides format-agnostic CRUD controllers and persistence utilities for Symfony apps, built on Doctrine's ObjectManager and ObjectRepository interfaces. It simplifies listing, filtering, sorting, and displaying resources without duplicating controllers.
ObjectManager/ObjectRepository. If the product is on Laravel/Eloquent, this is a non-starter and the decision is closed. If we are on Symfony + Doctrine (ORM or ODM), it is a legitimate candidate.composer require with MIT licensing and a Sylius-maintained codebase. The break-even point is roughly 8–10 resources with near-identical CRUD; below that, our own thin abstraction is cheaper.Adopt when:
Look elsewhere when:
main/master; PRs must target a specific minor-version branch (1.10, 1.11). That is a real governance constraint on our ability to land fixes on our own schedule.ObjectManager abstraction won't help.Recommended posture if we proceed: pin to 1.10.* for production stability, evaluate 1.11 in a spike, and treat the routing layer as experimental until it stabilizes.
For executives (one paragraph): This is a free, MIT-licensed Symfony component from Sylius that removes duplicated CRUD controller code. Instead of writing the same list/create/read/update/delete logic three times for admin, API, and storefront, we define a resource once and expose it everywhere with built-in filtering, sorting, and pagination. The business case is delivery speed on repetitive resource work and lower long-term maintenance surface. The cost is a framework-level commitment to Symfony and Doctrine plus a ramp-up period — no license fee, but real engineering time. Vendor risk is moderate-low: it is maintained by a commercial open-source company that ships it in its own product, though standalone community signals are thin and the newest feature line is still stabilizing.
For engineering (the honest version):
ObjectManager/ObjectRepository-based persistence, format-agnostic controllers, declarative operations and routing, request→data→view processing pipeline, grid/state-machine hooks, Pagerfanta pagination, JMS serializer support.main); PHP 8.0 and older Symfony lines are unsupported; the abstraction is Doctrine-only, so it will not save us if persistence changes.How can I help you explore Laravel packages today?