Download the PHP package polashmahmud/dishari without Composer
On this page you can find all versions of the php package polashmahmud/dishari. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download polashmahmud/dishari
More information about polashmahmud/dishari
Files in polashmahmud/dishari
Package dishari
Short Description A dynamic menu builder for Laravel Inertia Vue Shadcn projects.
License MIT
Informations about the package dishari
Dishari Menu Management
A powerful and flexible menu management package for Laravel applications built with Inertia.js and Vue 3. This package provides a drag-and-drop interface for managing nested menus, complete with icon support, groups, and active status toggling.
Features
- 📱 Drag & Drop Interface: Intuitive UI for reordering and nesting menu items.
- 🌳 Nested Structure: Support for unlimited levels of nested submenus.
- 📂 Menu Groups: Organize menus into logical groups (e.g., Platform, Settings).
- 🎨 Icon Integration: Built-in support for Lucide icons with a searchable picker.
- ⚡ Inertia.js & Vue 3: Seamless integration with modern Laravel stacks.
- 🛠 Fully Customizable: Publishable Vue components to match your application's design.
Installation
1. Require the Package
Install the package via Composer:
2. Run the Installer
Run the dishari:install command to publish the configuration, migrations, and frontend assets.
During installation, you will be asked to provide a directory name (default: dishari).
This determines where the frontend files will be published:
- Pages:
resources/js/pages/{directoryName} - Components:
resources/js/components/{directoryName}
3. Run Migrations
Run the migrations to create the menu tables:
4. Compile Assets
Recompile your assets to include the new components:
Frontend Integration
To display the dynamic menu in your application, you need to update your Sidebar component (usually resources/js/components/AppSidebar.vue or similar).
1. Update Menu Data Source
Locate your sidebar component and replace the static menu items with the useDishari hook.
Remove static data like this:
Add the dynamic hook:
2. Import the NavMain Component
You need to import the NavMain component that was published to your project. The path depends on the directory name you chose during installation.
If you chose dishari (default):
If you chose menu:
Full Example (AppSidebar.vue):
Usage
Accessing the Management Interface
Once installed, you can access the menu management interface at:
Configuration
The configuration file is located at config/dishari.php. You can customize the directory name, cache settings, and authentication requirements.
Requirements
- PHP 8.2+
- Laravel 11+
- Inertia.js
- Vue 3
- Tailwind CSS
- Shadcn Vue (recommended)
License
The MIT License (MIT). Please see License File for more information.