Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
wire-sortable-development
wire-sortable-development
nyoncode/wire-boost
claude-code
laravel
wire
ai
mcp
livewire
nyoncode
mcp-server
agent-skills
laravel-boost
wirestack

Add drag & drop row and column reordering to wire-table using the wire-sortable plugin and Table macros.

Install
php artisan boost:add-skill nyoncode/wire-boost

Save this content to: .claude/skills/wire-sortable-development/SKILL.md

# wire-sortable Development

## When to use this skill

Use when a wire-table should support drag & drop reordering of rows or columns.

## Workflow

1. Ensure wire-sortable is installed and `php artisan wire-sortable:install` has published its config and
   the `reorderable_column_orders` migration.
2. Enable reordering with the `Table` macros inside the component's `table()` method.

## Patterns

```php
public function table(Table $table): Table
{
    return $table
        ->query(Task::query())
        ->reorderable('position')
        ->paginatedWhileReordering()
        ->columns([
            TextColumn::make('title'),
        ]);
}
```

## Rules

- The reordering macros (`reorderable`, `alwaysReorderable`, `columnReorderable`,
  `paginatedWhileReordering`) only exist when wire-sortable is installed.
- The order column defaults to `wire-sortable.order_column` (`sort_order`); pass a column name to override.
- The drag handle is rendered from `Table::getDragHandleHtml()` (a Blade partial) — do not hand-build the
  handle markup in JS.
- **A board (kanban) is `Board` + `WithBoard`**, not a table: `Board::make()->model(Task::class)->groupBy('status')
  ->lanes(TaskStatus::class)->cardTitle('title')->orderColumn('position')`. Host it on a wire-panels `Page`
  (`use WithBoard;` + `protected static string $view = 'wire-sortable::board.content';`) or any Livewire
  component. The drag is Livewire's `wire:sort` — no script to write; guard transitions in
  `canMoveBoardCard()`, react in `boardCardMoved()`.

wire-sortable Development

When to use this skill

Use when a wire-table should support drag & drop reordering of rows or columns.

Workflow

  1. Ensure wire-sortable is installed and php artisan wire-sortable:install has published its config and the reorderable_column_orders migration.
  2. Enable reordering with the Table macros inside the component's table() method.

Patterns

public function table(Table $table): Table
{
    return $table
        ->query(Task::query())
        ->reorderable('position')
        ->paginatedWhileReordering()
        ->columns([
            TextColumn::make('title'),
        ]);
}

Rules

  • The reordering macros (reorderable, alwaysReorderable, columnReorderable, paginatedWhileReordering) only exist when wire-sortable is installed.
  • The order column defaults to wire-sortable.order_column (sort_order); pass a column name to override.
  • The drag handle is rendered from Table::getDragHandleHtml() (a Blade partial) — do not hand-build the handle markup in JS.
  • A board (kanban) is Board + WithBoard, not a table: Board::make()->model(Task::class)->groupBy('status') ->lanes(TaskStatus::class)->cardTitle('title')->orderColumn('position'). Host it on a wire-panels Page (use WithBoard; + protected static string $view = 'wire-sortable::board.content';) or any Livewire component. The drag is Livewire's wire:sort — no script to write; guard transitions in canMoveBoardCard(), react in boardCardMoved().
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console