wise-ui

Data & Lists

Backgrounds

Cards

Navigation

Text

Buttons

Layout

Kanban Board

Multi-column drag-and-drop board with cross-column transfers, collapsible columns, tag support, and inline add-item forms.

Backlog

2

Research competitor features

Design

Write migration script

Dev

To Do

3

Design card component

Design

Fix dropdown z-index

Bug

Write API docs

Docs

In Progress

2

Build sidebar nav

Dev

Update color tokens

Design

Done

3

Set up project

Dev

Create theme provider

Dev

Initial wireframes

Design

Installation

npx shadcn@latest add https://wise-ui.com/r/kanban-board.json

Props

PropTypeDefaultDescription
columnsKanbanColumn<T>[]-Array of columns, each with `id`, `title`, and `items`.
onColumnsChange(columns) => void-Called when items are reordered or moved between columns.
renderItem(item: T, columnId: string) => ReactNode-Render function for each item card.
onAddItem(columnId: string, title: string, tagId?: string) => void-Called when a new item is added via the inline form. Shows add button if provided.
getItemTagId(item: T) => string | undefined-Extract the tag id from an item. Required for the tag filter bar to appear.
tagsKanbanTag[]-Available tags shown in the add-item form. Each tag has `id`, `label`, and optional `color` class.
collapsiblebooleantrueWhether columns can be collapsed to a narrow strip.
minColumnWidthnumber200Minimum width of each expanded column. Columns flex to fill available space.
collapsedColumnWidthnumber44Width of each collapsed column in pixels.
classNamestring-Class applied to the board container.
columnClassNamestring-Class applied to each column.