Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Menu Bundle

Menu Bundle Laravel Package

symkit/menu-bundle

A Symfony bundle for defining, configuring, and rendering menus from PHP or YAML. Build nested navigation trees, control labels, routes, and attributes, and output ready-to-use menus in Twig templates with minimal setup and sensible defaults.

View on GitHub
Deep Wiki
Context7

A flexible menu system for Symfony. Manage menus from the database or via PHP builders, with support for complex structures (Mega Menus, advanced dropdowns).

Frequently asked questions about Menu Bundle
Is symkit/menu-bundle a Laravel package or a Symfony bundle?
It is a Symfony bundle, not a Laravel package. It integrates with Symfony routing and services and renders menus through Twig helpers. Laravel applications would need a shim layer because the service provider and Blade integration patterns differ entirely. Confirm this before adding it to a Laravel composer.json.
How do I install symkit/menu-bundle with Composer?
Install it with composer require symkit/menu-bundle and register the bundle in your Symfony bundles configuration if you are not using Flex auto-registration. Because the current line is v0.0.3, pin the exact version and commit your composer.lock rather than using a caret range. That prevents a routine composer update from pulling in an unexpected 0.x breaking change.
Can I define menus in YAML instead of PHP with this bundle?
Yes. The bundle is configuration-driven and supports declarative menu definitions in either YAML or PHP. Both formats support nested items so you can build multi-level navigation trees without writing rendering code. Choose YAML for static navigation and PHP when menu items need to be generated from runtime data.
How do I render a menu in a Twig template with symkit/menu-bundle?
The bundle ships Twig helpers so you can output a fully built menu tree with a single call in your template. Rendering is driven by the menu you defined in YAML or PHP, including labels, routes, and item attributes. Templates are configurable, so you can override the default markup to match your design system.
How does active menu item detection work in this bundle?
The bundle is route-aware and resolves the active state automatically based on the current request's route. You can also declare visibility rules so items are hidden when they should not appear. This removes the usual boilerplate of comparing routes manually inside your Twig templates.
Is symkit/menu-bundle safe to use in production at v0.0.3?
Treat it as a spike rather than a production dependency until a 1.0 or an explicit stability commitment appears. Under semver 0.x conventions, breaking changes can land in a patch release. If you proceed, wrap all package calls behind a thin internal adapter so a future swap or removal stays contained. Document a removal plan and a written risk acceptance before going live.
What Symfony and PHP versions does symkit/menu-bundle support?
That is not documented in the available release material, so read the require constraints in the package's composer.json. Compare them against your runtime Symfony and PHP versions as the very first gate. A mismatch ends the evaluation cheaply. Do not assume compatibility from the bundle name alone.
Does symkit/menu-bundle have a test suite and CI?
There is no public evidence of a test suite or CI badge in the current release material for v0.0.3. Check the repository for a tests directory and a CI workflow before adopting. A package without a test signal is a maintenance risk, not necessarily a blocker. Weigh it alongside commit cadence and issue response time.
How do I upgrade between 0.0.x releases of symkit/menu-bundle?
There are no release notes or changelog published for v0.0.3, so assume any 0.0.x bump may be breaking. Pin an exact version, commit the lockfile, and review the diff between tags manually before upgrading. If you adopt the bundle, record the exact tag you validated so future upgrades can be diffed against a known-good baseline.
What are the alternatives to symkit/menu-bundle for Symfony menus?
KnpMenuBundle is the long-established Symfony menu library with a wider user base and documented release history. A small in-house menu service built from an array tree and a Twig macro is another valid option if your navigation is simple. The trade-off is that you give up declarative YAML config and built-in active-state handling. Given the pre-1.0 status here, the mature alternative is the lower-risk default.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console