/admin/nav-builder lets you create unlimited database-driven menus with drag-and-drop ordering, TinyMCE mega menus, per-item visibility rules, five built-in color schemes, and a plugin contract for adding custom item types — all without editing any template files.
Admin Path
Key Features
Unlimited Named Menus
Create as many menus as you need. Designate exactly one as primary — it renders automatically in the public site header.
Graceful Fallback
A hardcoded navigation is preserved as a fallback. If no primary dynamic menu is configured, the site header continues to display the default navigation.
Drag-and-Drop Ordering
Reorder items within a menu using SortableJS drag-and-drop. Changes are saved immediately.
2-Level Nesting
Support for top-level items with child sub-menus. Mega menus and custom HTML submenu types accept TinyMCE-edited content.
Nav Item Types
Visibility Options (Per Item)
Control which users see each navigation item:Color Schemes
Five built-in color schemes are available per menu:
Select
custom to use only the Custom CSS textarea — no preset variables are applied.
CSS Variable Scope
All color variables are scoped to#top-nav-{slug} to prevent conflicts between multiple menus on the same page:
Developer Plugin Contract
Add custom navigation item types by implementing theTopNavigationPlugin contract.
Step 1: Implement the Contract
Step 2: Add a plugin.json Manifest
Create a plugin.json file in your plugin folder (e.g. plugins/my-search-bar/):
Step 3: Drop Into plugins/
Place the plugin folder inside the plugins/ directory. It is auto-discovered on the next request — no registration or service provider changes needed.
If
adminFormPartial() returns a non-null path, that Blade partial is rendered inside the nav item editor in the admin panel, allowing plugin-specific configuration fields to appear alongside the standard item settings.