Kanban

@allem-ui/kanban

Drag-and-drop kanban board with columns, cards, labels, and assignees. Zero external drag-and-drop dependencies.

Installation

npm install @allem-ui/kanban

Basic Usage

To Do

2
Design

Design homepage

Write docs

In Progress

1

Build components

A

Done

1

Setup repo

KanbanBoard Props

PropTypeDefaultDescription
columns*KanbanColumnData[]—Array of column definitions with items
onCardMove(cardId, fromColumnId, toColumnId, newIndex) => void—Called when a card is dragged to a new position
classNamestring—Additional CSS classes

KanbanCard Props

PropTypeDefaultDescription
id*string—Unique card identifier
title*string—Card title
descriptionstring—Card description text
labels{ text: string; color: string }[]—Colored label badges
assigneestring—Assignee name (shows initials avatar)
dueDatestring—Due date text

KanbanColumn Props

PropTypeDefaultDescription
id*string—Unique column ID
title*string—Column heading
countnumber—Item count badge
colorstring—Accent color
onAddCard() => void—Show add card button
onDrop(cardId, targetColumnId, index) => void—Drop handler
classNamestring—Additional CSS classes

KanbanHeader Props

PropTypeDefaultDescription
title*string—Header text
countnumber—Count badge
colorstring—Accent color
classNamestring—Additional CSS classes

KanbanAddCard Props

PropTypeDefaultDescription
onAdd(title: string) => void—Called with new card title
classNamestring—Additional CSS classes