Integrated KANBAN
Models for which a StateMachine has been defined now automatically provide a KANBAN view board that displays all defined States as columns, letting your team move cards with drag & drop — guided by defined transition rules that keep every step on track.


You can configure available states and available transitions in code:
| protected function getStates(): ?array
{
return [
'new' => $this->createState('steelblue', 'file-plus', true),
'in_progress' => $this->createState('orange', 'pencil'),
'waiting' => $this->createState('darkorange', 'hourglass'),
'review' => $this->createState('orange', 'seal-question'),
'rejected' => $this->createState('red', 'seal-warning'),
'accepted' => $this->createState('green', 'seal-check'),
'archived' => $this->createState('grey', 'archive'),
];
}
protected function getTransitions(): ?array
{
return array_filter([
'new' => ['in_progress', 'waiting'],
'in_progress' => ['waiting', 'review'],
'waiting' => ['in_progress', 'review'],
'review' => ['rejected', 'accepted', 'in_progress', 'waiting'],
'rejected' => ['archived', 'review'],
'accepted' => ['archived'],
'archived' => (Debug::enabled() ? ['new'] : null),
]);
}
|
When you drag a card, the board reflects the possible target statuses and displays them visually:
