By default KnpMenu and KnpMenuBundle are shipped with multiple providers:
ArrayAccessProvider A menu provider getting the menus from a class implementing ArrayAccess.
LazyProvider A menu provider building menus lazily thanks to builder callables.
PsrProvider A menu provider getting the menus from a PSR-11 container.
BuilderAliasProvider A menu provider that allows for an AcmeBundle:Builder:mainMenu shortcut syntax
BuilderServiceProvider This provider uses methods of services to build menus.
However, to simplify the creation and storage of menus, HarmonyCMS is shipped by default with one more provider: Configuration provider.
The configuration provider is shipped by default by the HarmonyMenuBundle. This provider allow developers to create easily as possible menus from configuration YAML files.
The documentation on how to use this provider is described in the Chapter 2. Create your first menu.
This provider is only shipped with the HarmonyMenuManager module.