Your browser sucks, JavaScript disabled! Gunnar's console needs JavaScript and WebAssembly. Git over SSH on port 2222 does not.

nordisk/facett

.nornir/widgets/facett-kanban.md

facett-kanban — design note

Status: builds (egui 0.33) + 3 unit tests green. Lives in ordning/crates/widgets/facett-kanban; destined for the facett repo (see README).

What it is

A Kanban board facet: cases as draggable cards in columns (one per workflow status), optionally grouped into swimlanes (by assignee/priority/kind), with WIP limits per column. Dragging a card to another column is how a user transitions a case's status.

API

let mut board = Board::new("Support", vec![
    Column::new("triage", "Triage"),
    Column::new("active", "In Progress").wip(3),   // WIP limit
    Column::new("done",   "Done"),
]).with_swimlanes(vec!["maria".into(), "john".into()]);   // optional
board.set_cards(cards);                  // Vec<Card{ id, title, column, swimlane, assignee, priority, tags }>
board.ui(ui);                            // paint one frame (egui)
for mv in board.take_moves() {           // drain drag-moves → apply as transitions
    // host validates + fires the workflow transition; if rejected, board.set_cards(fresh)
}

Design decisions

Move-to-facett notes

TODO when it matures