Skip to content

Conversation

@micahbrich
Copy link

Why

The table view is fantastic for filtering, sorting, and seeing detailed metadata — but when I'm trying to get a quick sense of where things are at, I find myself mentally grouping by the Status column. A kanban board makes that instant: glance and see "15 open, 0 in progress, 0 blocked."

This doesn't replace the table — it's a toggle. Best of both worlds.

Screenshot

kanband-view

What it does

  • Table | Board toggle in the Issues toolbar
  • 4 status columns: Open, In Progress, Blocked, Closed
  • Closed column collapsed by default (click header to expand) — keeps focus on active work
  • Cards show: title, type badge, priority badge, assignee
  • Click card → opens Details panel (same as clicking a table row)
  • Respects all filters — uses the same filtered data as the table view
  • Read-only — no drag-drop, just visualization

How I built it (with your architecture in mind)

I studied the existing codebase carefully and tried to match your patterns:

  • One new file (KanbanBoard.tsx, ~70 lines) — follows the same structure as IssuesView.tsx
  • Reuses existing componentsTypeBadge, PriorityBadge from common/
  • Uses existing type systemSTATUS_LABELS, STATUS_COLORS, Bead, BeadStatus
  • CSS follows your conventions — uses your spacing variables, VS Code theme vars, same naming patterns
  • No new dependencies
  • Inline JSX — matches how IssuesView renders rows (no over-abstraction)

Total change: ~250 lines across 3 files.

Files changed

File Change
src/webview/views/KanbanBoard.tsx New component (~70 lines)
src/webview/views/IssuesView.tsx Added toggle + conditional render (+28 lines)
src/webview/styles.css Kanban + toggle styles (+150 lines)

Happy to adjust anything! Really enjoying using vscode-beads.

Adds a Table/Board toggle to the Issues panel toolbar, allowing users
to switch between the existing table view and a new kanban-style board
grouped by status (Open, In Progress, Blocked, Closed).

- Read-only visualization (no drag-drop)
- Respects all existing filters
- Click card to open details
- Closed column collapsed by default (click to expand)
- Matches existing component patterns and styling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant