object.bg/menubundle
A Symfony bundle for defining, managing, and rendering menus in your applications. Build hierarchical navigation, configure menu items, and output them cleanly in templates with a flexible, extendable API.
menus + menu_items table, a tree builder, a cache layer, and an admin screen. Buying (or borrowing) only pays off if the out-of-box admin UX is genuinely better than what we'd build in 2–4 engineer-days. Here it isn't, because the admin UX comes bundled with a heavyweight legacy admin framework we don't run.MenuProvider contract and the entity schema, then close the tab. That's the realistic value here.For executives: This package promises editable navigation menus — a real product need — but it's built for Symfony, not our Laravel stack, and has zero adoption, no documentation, and no support path. We should not take it as a dependency. The good news: the underlying problem (menus + an admin screen) is small and well-understood. We can build the equivalent natively in 2–4 engineer-days, fully owned, fully tested, no license exposure. Recommendation: decline adoption, optionally borrow the design. Cost of the build is roughly one sprint-week; cost of adopting a mislabeled, unmaintained package is a permanent maintenance tax plus a rewrite the first time we upgrade frameworks.
For engineering: Treat this as a reference spec, not a library. The transferable idea is a MenuProvider interface — resolve a menu by handle, return a cached tree, invalidate on write — implemented against Eloquent with menus and menu_items tables and edited through Filament or Nova. The non-transferable parts are Doctrine entities, Sonata Admin services, and Symfony bundle bootstrapping, none of which exist in our runtime. If anyone wants to read the source for schema ideas, budget half a day; otherwise, skip it. Do not vendor it — a forked Symfony bundle with a Sonata Admin dependency is materially more expensive to maintain than 200 lines we write ourselves.
For product/marketing stakeholders: This does not unlock "marketing can edit the nav bar" any faster than our own build would. It's a small piece of plumbing wrapped around a framework we don't use. If that's a priority, the right move is to put it on the roadmap as a first-class feature — the estimate is small and the outcome is the same. Flag it as not adopted; design reviewed.
How can I help you explore Laravel packages today?