{"id":18510725,"url":"https://github.com/novius/laravel-nova-menu","last_synced_at":"2026-05-13T09:08:31.235Z","repository":{"id":46860850,"uuid":"206251821","full_name":"novius/laravel-nova-menu","owner":"novius","description":"Menu builder for Laravel Nova","archived":false,"fork":false,"pushed_at":"2024-09-13T15:47:26.000Z","size":98,"stargazers_count":8,"open_issues_count":0,"forks_count":8,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-12-06T17:33:02.193Z","etag":null,"topics":["hac","hacktoberfest","laravel","menu","nova"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/novius.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-04T06:51:08.000Z","updated_at":"2024-08-06T14:20:51.000Z","dependencies_parsed_at":"2023-12-13T16:29:36.972Z","dependency_job_id":"f18d4e97-e38a-4d91-936f-c45f2d0de166","html_url":"https://github.com/novius/laravel-nova-menu","commit_stats":{"total_commits":33,"total_committers":8,"mean_commits":4.125,"dds":0.6363636363636364,"last_synced_commit":"0c74896905c24eb0b4c6183ac2dc17d4a8951b01"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novius%2Flaravel-nova-menu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novius%2Flaravel-nova-menu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novius%2Flaravel-nova-menu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novius%2Flaravel-nova-menu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/novius","download_url":"https://codeload.github.com/novius/laravel-nova-menu/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230532443,"owners_count":18240792,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hac","hacktoberfest","laravel","menu","nova"],"created_at":"2024-11-06T15:24:41.453Z","updated_at":"2026-05-13T09:08:31.223Z","avatar_url":"https://github.com/novius.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nova menu manager\n[![Travis](https://img.shields.io/travis/novius/laravel-nova-menu.svg?maxAge=1800\u0026style=flat-square)](https://travis-ci.org/novius/laravel-nova-menu)\n[![Packagist Release](https://img.shields.io/packagist/v/novius/laravel-nova-menu.svg?maxAge=1800\u0026style=flat-square)](https://packagist.org/packages/novius/laravel-nova-menu)\n[![Licence](https://img.shields.io/packagist/l/novius/laravel-nova-menu.svg?maxAge=1800\u0026style=flat-square)](https://github.com/novius/laravel-nova-menu#licence)\n\nA Nova tool to manage menus.\n\n## Requirements\n\n* PHP \u003e= 8.2\n* Laravel Nova \u003e= 4.0\n* Laravel Framework \u003e= 10.0 \n\n\u003e **NOTE**: These instructions are for Laravel \u003e= 9.0 and Laravel Nova 4.0. If you are using prior version, please\n\u003e see the [previous version's docs](https://github.com/novius/laravel-nova-menu/tree/3-x).\n\n\n## Installation\n\n```sh\ncomposer require novius/laravel-nova-menu\n```\n\nThen, launch migrations \n\n```sh\nphp artisan migrate\n```\n\n### Configuration\n\nSome options that you can override are available.\n\n```sh\nphp artisan vendor:publish --provider=\"Novius\\LaravelNovaMenu\\LaravelNovaMenuServiceProvider\" --tag=\"config\"\n```\n\n## Edit default templates\n\nRun:\n\n```sh\nphp artisan vendor:publish --provider=\"Novius\\LaravelNovaMenu\\LaravelNovaMenuServiceProvider\" --tag=\"views\"\n```\n\n## Usage\n\n### Blade directive\n\nYou can display menu with : \n\n```blade\n\u003cx-laravel-nova-menu::menu menu=\"slug-of-menu\" /\u003e\n```\n\nYou can also display menu by passing the model instance :\n\n```blade\n\u003cx-laravel-nova-menu::menu :menu=\"Menu::find(1)\" /\u003e\n```\n\nBy default a fallback to app()-\u003egetLocale() is activated. \n\nIf you want force a specific slug with no fallback you can call :\n\n```blade\n\u003cx-laravel-nova-menu::menu menu=\"slug-of-menu\" :localeFallback=\"false\" /\u003e\n```\n\nIf you want to use a specific view you can call :\n\n```blade\n\u003cx-laravel-nova-menu::menu menu=\"slug-of-menu\" view=\"partial/menu\" /\u003e\n```\n\n### Override views\n\nYou can override views with :\n\n```sh\nphp artisan vendor:publish --provider=\"Novius\\LaravelNovaMenu\\LaravelNovaMenuServiceProvider\" --tag=\"views\"\n```\n\n### Manage internal link possibilities\n\nLaravel Nova Menu uses [Laravel Linkable](https://github.com/novius/laravel-linkable) to manage linkable routes and models. Please read the documentation.\n\n### Customize tree passed to the view\n\n```php\n\u003c?php\n\nnamespace App\\Providers;\n\nuse Novius\\LaravelNovaMenu\\LaravelNovaMenuService;\n\nclass AppServiceProvider extends ServiceProvider\n{\n     // ...\n     \n    public function boot()\n    {\n        /**\n         * @var LaravelNovaMenuService $menu\n         */\n        $menu = $this-\u003eapp-\u003eget('laravel-nova-menu');\n        $menu-\u003esetTreeUsing(function(Menu $menu, array $tree) {\n            // ... your actions on tree\n            return $tree;\n        });\n    }\n}\n```\n\n### Customize tree building\n\n```php\n\u003c?php\n\nnamespace App\\Providers;\n\nuse Novius\\LaravelNovaMenu\\LaravelNovaMenuService;\n\nclass AppServiceProvider extends ServiceProvider\n{\n     // ...\n     \n    public function boot()\n    {\n        /**\n         * @var LaravelNovaMenuService $menu\n         */\n        $menu = $this-\u003eapp-\u003eget('laravel-nova-menu');\n        $menu-\u003esetBuildTreeUsing(function(Collection $items) {\n            // ... your actions to build tree as an array\n            return $tree;\n        });\n    }\n}\n```\n\n## Lint\n\nRun php-cs with:\n\n```sh\ncomposer run-script lint\n```\n\n## Contributing\n\nContributions are welcome!\nLeave an issue on Github, or create a Pull Request.\n\n\n## Licence\n\nThis package is under [GNU Affero General Public License v3](http://www.gnu.org/licenses/agpl-3.0.html) or (at your option) any later version.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovius%2Flaravel-nova-menu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnovius%2Flaravel-nova-menu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovius%2Flaravel-nova-menu/lists"}