integrated/menu-bundle
A Laravel bundle for defining, organizing, and rendering application menus, giving you a structured way to manage navigation items and integrate menus cleanly into your PHP project.
MenuEvents lets feature modules add their own nav items rather than editing one shared menu array. For a PM this is the difference between shipping a new feature as a self-contained unit and shipping it with a cross-team merge conflict in the admin navigation. It is the more strategically interesting half of the package.website-bundle); per-site or per-locale menu trees; permission-gated items so users only see destinations they can reach.Adopt if:
website-bundle. This is the natural navigation layer and integrates without glue code.Look elsewhere if:
Evaluation checklist before committing: read the provider for N+1 queries and caching behavior; confirm the tree model supports depth, ordering, and locale; check whether items can be permission-scoped; review release cadence and test coverage; confirm it is not Symfony-only in practice. Then wrap retrieval behind a thin internal interface so a future swap is a replacement, not a rewrite.
To executives: It lets marketing and operations change site navigation without a ticket or a deploy, and it keeps admin menus modular so new features plug in rather than requiring edits to a shared file. Cost is near zero — MIT, small footprint, roughly a few days of engineering to prove out. The caveat to state plainly: it is early-stage, tied to one ecosystem, and effectively unmaintained upstream, so frame it as an accelerator for the Integrated suite, not a strategic platform bet. Success metrics: median time-to-change for a nav edit, and deploys avoided per quarter.
To engineering: It gives you a clean seam — MenuEvents for contribution, a database provider for persistence — so navigation stops being a hardcoded array and stops generating merge conflicts. Be honest about the risks: it is a Symfony bundle with Symfony/Doctrine assumptions, so a Laravel shop owns the adapter; nobody outside this ecosystem uses it, so there is no external battle-testing and no community bug reports. Mitigate by vendoring or forking a pinned copy, wrapping retrieval in a small internal interface, writing our own tests around ordering, permission, and locale behavior, and caching DB reads at the edge of the request with invalidation on menu-edit events. If we are not on Integrated, price the alternative first: spatie/laravel-menu or a simple menus / menu_items pair is comparable effort with far more support behind it.
How can I help you explore Laravel packages today?