ns-ui

Queue Triage Ratchet

Card-triage queue driven by a literal one-way ratchet — deciding a card clicks a toothed rail forward one notch; undo means visibly lifting the pawl before the rail eases back.

Use when a card-at-a-time decision queue where progress should feel earned and one-way, each decision clicking a sawtooth rail forward a notch and undo visibly lifting the pawl before the rail eases back, so reversal is possible but never free; pick swipe-row-detent instead when the items stay in a list and the gesture is lateral per row, or confirm-hold-ink when a single action needs a deliberate gate rather than a stream of decisions.

Install

npx shadcn add https://design.helpmarq.com/r/queue-triage-ratchet.json
  • queue
  • triage
  • ratchet
  • undo
  • listbox
  • keyboard
  • card-stack
  • irreversibility
  • aria-live

ns-ui / queue-triage-ratchet — triage queue with a one-way ratchet

Weekly usage digest

Automated report

New comment on PR #482

jrivera · code review

Renewal reminder — Atlas Studio

Billing · due in 4 days

Plan renews at the current rate unless changed before the 26th. No action needed to continue as-is.

Left/Right or J/K to triage, U (or Cmd/Ctrl+Z) to undo — undo lifts the pawl before the rack eases back.

Props

PropTypeDefaultDescription
cardsPawlClickCard[]Initial queue, top of stack first. Managed internally after mount.
onArchive?(card: PawlClickCard) => voidCalled with the card whenever it's archived.
onKeep?(card: PawlClickCard) => voidCalled with the card whenever it's kept.
onUndo?(card: PawlClickCard) => voidCalled with the card whenever an archive/keep is undone.
onEmpty?() => voidCalled once the queue is fully drained.
className?string