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
Requires
- php: ^8.0
- illuminate/support: ^12.0
- livewire/flux: ^2.0
- livewire/livewire: ^3.0
- spatie/laravel-medialibrary: ^11.13
README
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
- GitHub: github.com/lastdino
- Email: 87484368+lastdino@users.noreply.github.com