lastdino/kanban-board

This is my package KanbanBoard

Installs: 39

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Language:Blade

pkg:composer/lastdino/kanban-board

v1.3.2 2025-12-26 02:40 UTC

This package is auto-updated.

Last update: 2025-12-26 02:42:37 UTC


README

Laravel Livewire PHP

Laravelベースのカンバンボードパッケージです。Livewire 3とFlux UIを使用した、直感的なタスク管理システムを提供します。

要件

  • PHP 8.0以上
  • Laravel 12.0以上
  • Livewire 3.0以上
  • Livewire Flux 2.0以上
  • Spatie Laravel Media Library 11.13以上
  • AlpineJS 3.0以上
  • @alpinejs/sort 3.0以上
  • @tailwindcss/typography 0.5以上

インストール

1. Composerでインストール

composer require lastdino/kanban-board

2. 設定ファイルの公開

php artisan vendor:publish --provider="Lastdino\KanbanBoard\KanbanBoardServiceProvider" --tag="kanban-config"

3. マイグレーションの実行

php artisan vendor:publish --provider="Lastdino\KanbanBoard\KanbanBoardServiceProvider" --tag="kanban-migrations"
php artisan migrate

4. アセットとビューの設定

このパッケージのスタイルを適用するために、以下のいずれかの操作を行ってください。

A. ビューを公開する場合

ビューを公開すると、パッケージのスタイルが自動的にプロジェクトのビルドに含まれます。

php artisan vendor:publish --provider="Lastdino\KanbanBoard\KanbanBoardServiceProvider" --tag="kanban-views"

B. CSSを直接インポートする場合

ビューを公開せずにスタイルのみを適用したい場合は、resources/css/app.css に以下の行を追加してください。

@import "../../packages/lastdino/kanban-board/dist/kanban-board.css";

5. アセットのビルド

設定後、アセットをビルドしてください。

npm run build

6. 言語ファイルの公開(オプション)

php artisan vendor:publish --provider="Lastdino\KanbanBoard\KanbanBoardServiceProvider" --tag="kanban-lang"

6. Spatie Media Library の設定

このパッケージはファイル添付機能にSpatie Media Libraryを使用しています。Spatie Media Libraryのインストールと設定については、公式ドキュメントを参照してください。 基本的な設定ステップ:

# Spatie Media Libraryのマイグレーションを公開
php artisan vendor:publish --provider="Spatie\MediaLibrary\MediaLibraryServiceProvider" --tag="migrations"

# マイグレーションを実行
php artisan migrate

# 設定ファイルを公開(オプション)
php artisan vendor:publish --provider="Spatie\MediaLibrary\MediaLibraryServiceProvider" --tag="config"

7. AlpineJS Sort Plugin のインストール

このパッケージはドラッグ&ドロップ機能に '@alpinejs/sort' プラグインを使用しています。AlpineJS Sort Pluginのインストールについては、公式ドキュメントを参照してください。

機能

  • プロジェクト管理: 複数のプロジェクトを同時に管理
  • カラム管理: カスタマイズ可能なワークフローステップ
  • タスク管理: ドラッグ&ドロップでのタスク移動
  • バッジシステム: タスクの分類とラベリング
  • コメント機能: タスクへのコメント追加
  • サブタスク機能: タスクの階層管理
  • チェックリスト: タスク内のチェックリスト機能
  • ファイル添付: Spatie Media Libraryを使用したファイル管理
  • ファイル一覧: プロジェクト内の全添付ファイルを一覧表示
  • Wiki機能: プロジェクトごとのドキュメント管理機能

設定

config/kanban-board.phpで各種設定をカスタマイズできます:

return [
    // ユーザーモデルの設定
    'users_model' => "\App\Models\User",

    // ルート設定
    'routes' => [
        'prefix' => 'kanban',
        'middleware' => ['web', 'auth:web'],
        'guards' => ['web'],
    ],

    // 日付表示設定
    'datetime' => [
        'formats' => [
            'default' => 'Y-m-d H:i:s',
            'date' => 'Y-m-d',
            'time' => 'H:i:s',
            'year_month' => 'Y-m',
        ],
    ],

    // ユーザー表示設定
    'user' => [
        'display_name_column' => 'Full_name',
        'fallback_columns' => ['full_name', 'display_name', 'name'],
    ],
];

使用方法

ルート設定

パッケージは自動的に /kanban プレフィックスでルートを登録します。設定ファイルでカスタマイズ可能です。

デフォルトで使用可能な主要なルート:

  • /kanban/project_list - プロジェクト一覧
  • /kanban/board - カンバンボード(project_id パラメータが必要)
  • /kanban/wiki - プロジェクトWiki(project_id パラメータが必要)
  • /kanban/project/files - プロジェクト添付ファイル一覧(project_id パラメータが必要)

タスクリマインダーの送信

期限が近づいているタスクのリマインダーを送信するコマンドを提供しています。

php artisan kanban:send-reminders

ライセンス

MITライセンスの下で公開されています。詳細は LICENSE ファイルをご覧ください。

作者

Lastdino