承接 shreejan/dash-arrange 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

shreejan/dash-arrange

最新稳定版本:1.0.0

Composer 安装命令:

composer require shreejan/dash-arrange

包简介

A Filament plugin for customizable dashboard widgets with drag & drop functionality

README 文档

README

A Filament plugin that allows users to customize their dashboard widgets with drag & drop functionality.

GitHub

Installation

composer require shreejan/dash-arrange

Setup

Quick Setup (Recommended)

Run the install command which will automatically:

  • Publish and run migrations
  • Publish the Dashboard stub
php artisan dash-arrange:install

Make sure your app/Providers/Filament/AdminPanelProvider.php uses the correct Dashboard class:

use App\Filament\Pages\Dashboard; // Instead of Filament\Pages\Dashboard

That's it! The package is now ready to use.

Manual Setup

If you prefer to set up manually:

1. Publish and Run Migrations

php artisan vendor:publish --tag=dash-arrange-migrations
php artisan vendor:publish --tag=dash-arrange-dashboard
php artisan migrate

2. Update Your Dashboard Page

Update your app/Filament/Pages/Dashboard.php to use DashArrange:

<?php

namespace App\Filament\Pages;

use Shreejan\DashArrange\Traits\HasDashArrange;
use Filament\Pages\Dashboard as BaseDashboard;

class Dashboard extends BaseDashboard
{
    use HasDashArrange;

    protected string $view = 'dash-arrange::dashboard';

    public function mount(): void
    {
        // Initialize DashArrange functionality
        $this->mountHasDashArrange();
    }
}

3. Update AdminPanelProvider

Make sure your app/Providers/Filament/AdminPanelProvider.php uses the correct Dashboard class:

use App\Filament\Pages\Dashboard; // Instead of Filament\Pages\Dashboard

4. (Optional) Publish Configuration

php artisan vendor:publish --tag=dash-arrange-config

Usage

Once installed, users will see a "Customize My Dashboard" button on their dashboard. They can:

  • Drag and drop widgets to reorder them
  • Show/hide widgets using checkboxes
  • Save their preferences (stored per user)
  • Revert unsaved changes with the Cancel button
  • Widget preferences are persistent and user-specific

Configuration

Edit config/dash-arrange.php to customize:

  • Grid columns: Default number of columns for the dashboard grid
  • User model: Customize the user model if needed
  • Permission checks: Add custom permission logic for widgets
  • Customize Dashboard Button:
    • customize_dashboard_title: The title text for the customize dashboard button (default: 'Customize My Dashboard')
    • customize_dashboard_button_color: The color of the customize dashboard button. Colors can be added in AdminPanelProvider.php -> colors() method (default: 'primary')

Requirements

  • PHP ^8.4
  • Filament ^4.0
  • Laravel ^12.0

Features

  • ✅ Drag & drop widget reordering
  • ✅ Show/hide widgets with checkboxes
  • ✅ User-specific preferences (stored in database)
  • ✅ Permission-based widget visibility (FilamentShield compatible)
  • ✅ Responsive grid layout
  • ✅ Widget column span support
  • ✅ Easy installation command
  • ✅ Fully customizable configuration

Support

Credits

Security

If you discover a security vulnerability within this package, please send an e-mail to shreezanpandit@gmail.com. All security vulnerabilities will be promptly addressed.

📄 License

The MIT License (MIT). Please see License File for more information.

统计信息

  • 总下载量: 42
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-12-13