|
2 | 2 |
|
3 | 3 | Transform any Laravel model into a production-ready drag-and-drop Kanban board. |
4 | 4 |
|
| 5 | +**Works with Filament admin panels and standalone Livewire applications.** |
| 6 | + |
5 | 7 | [](https://packagist.org/packages/relaticle/flowforge) |
6 | 8 | [](https://packagist.org/packages/relaticle/flowforge) |
7 | 9 | [](https://php.net) |
8 | | -[](https://filamentphp.com) |
| 10 | +[](https://laravel.com) |
9 | 11 | [](https://github.com/relaticle/flowforge/actions) |
10 | 12 |
|
11 | 13 | <div align="center"> |
12 | 14 | <img src="art/preview.png" alt="Flowforge Kanban Board" width="800"> |
13 | 15 | </div> |
14 | 16 |
|
15 | | -## Why Flowforge? |
| 17 | +## Features |
16 | 18 |
|
17 | | -- **3 Integration Patterns** - Filament Pages, Resources, or standalone Livewire |
18 | | -- **Production-Ready** - Handles 100+ cards per column with intelligent pagination |
19 | | -- **Quick Setup** - Get running in 90 seconds with minimal configuration |
20 | | -- **Fully Customizable** - Actions, schemas, filters, and themes |
| 19 | +- **3 Integration Patterns** - Works with Filament Pages, Resources, or standalone Livewire components |
| 20 | +- **Enterprise-Scale Performance** - Cursor-based pagination handles unlimited cards with intelligent loading |
| 21 | +- **Rich Card Schemas** - Filament Schema builder creates complex card layouts with forms and components |
| 22 | +- **Smart Position Management** - Advanced ranking algorithm with conflict resolution and repair commands |
| 23 | +- **Optimistic UI Experience** - Instant visual feedback with loading states and smooth interactions |
| 24 | +- **Native Filament Integration** - Deep table system integration for filters, search, and actions |
21 | 25 |
|
22 | 26 |
|
23 | 27 | ## Requirements |
24 | 28 |
|
25 | 29 | - **PHP:** 8.3+ |
26 | 30 | - **Laravel:** 11+ |
27 | | -- **Filament:** 4.x |
| 31 | +- **Livewire:** 3.x+ |
| 32 | +- **Filament:** 4.x+ |
28 | 33 | - **Database:** MySQL, PostgreSQL, SQLite, SQL Server, MariaDB |
29 | 34 |
|
30 | 35 |
|
31 | | -## Quick Start |
| 36 | +## Installation |
32 | 37 |
|
33 | 38 | ```bash |
34 | 39 | composer require relaticle/flowforge |
35 | 40 | ``` |
36 | 41 |
|
37 | | -Add CSS assets to your theme, create a position column, generate your board, and register it in your panel. |
| 42 | +## Usage |
| 43 | + |
| 44 | +**Standalone Livewire** (any Laravel application): |
| 45 | +```php |
| 46 | +use Relaticle\Flowforge\Concerns\InteractsWithBoard; |
| 47 | + |
| 48 | +class TaskBoard extends Component implements HasBoard |
| 49 | +{ |
| 50 | + use InteractsWithBoard; |
| 51 | + |
| 52 | + public function board(Board $board): Board |
| 53 | + { |
| 54 | + return $board |
| 55 | + ->query(Task::query()) |
| 56 | + ->columnIdentifier('status') |
| 57 | + ->positionIdentifier('position') |
| 58 | + ->columns([ |
| 59 | + Column::make('todo')->label('To Do')->color('gray'), |
| 60 | + Column::make('in_progress')->label('In Progress')->color('blue'), |
| 61 | + Column::make('completed')->label('Completed')->color('green'), |
| 62 | + ]); |
| 63 | + } |
| 64 | +} |
| 65 | +``` |
| 66 | + |
| 67 | +**Filament Admin Panel**: |
| 68 | +```bash |
| 69 | +php artisan flowforge:make-board TaskBoard --model=Task |
| 70 | +``` |
38 | 71 |
|
39 | | -**[→ View Complete Documentation](https://relaticle.github.io/flowforge/)** |
| 72 | +**[View Complete Documentation →](https://relaticle.github.io/flowforge/)** |
40 | 73 |
|
41 | 74 |
|
42 | 75 | ## Contributing |
|
0 commit comments