A read-only, board-scoped screen for running a daily standup inside Janus. It shows what moved since yesterday, what's still in flight, what's blocked and who was quiet — as a single list of rows ordered closest-to-done first, so attention goes to finishing rather than starting.
Seven stacked regions, full width, no side panel. Everything above the body is control; everything below it is context.
Open section starts as a count — present, not in the way.Default state — Flow grouping, 24-hour window, two people filtered, one row expanded.
One line, 37px. Two elements are links, one is a disclosure control, the rest is read-only signal.
▸ / ▾. Clicking
anywhere on the row except a link does the same thing.Opening a row reveals four read-only blocks and no controls: the transition timeline with actor and source, blockers, pull requests with CI state, and the AI comment summary plus a context line. Its only interactive elements are links — the blocker key and the PR. Anything you want to do happens on the ticket page.
The same rows, filters and controls; only the section headers change. Switched by the header tabs or G.
Flow orders sections by the board's own statuses, closest-to-done first. Activity groups by what happened in the window. People groups by assignee, volume-ordered, with Unassigned always last.
Nothing bespoke — the screen is assembled from the existing design system.
| Element | Treatment |
|---|---|
| Radius | 6px for cards and sections, 4px for chips and controls, 2px for inline code, pills fully rounded. |
| Type | Fixed scale — 11 micro · 12 labels · 13 rows and body-compact · 14 body · 16 headers. Monospace for keys, counts and times only. |
| Surfaces | background for the page · card for sections · muted for section headers and expanded rows · accent for row hover. |
| Status | The existing status chip — tinted wash with a coloured leading dot and default text. Colour resolves from the ticket's own board configuration. |
| Priority | The existing chevron glyph, where shape encodes rank, so it reads without colour and at 14px. |
| Emphasis | Only three accents: primary for links and the focused row, amber for stale, red for blocked. Everything else is neutral. |
| Motion | Expand/collapse only. Rows never reorder while the screen is being read. |
Every value is a theme token, so the same layout renders in the app's dark theme with no changes.
| Aspect | Behaviour |
|---|---|
| Filters | Board, window, grouping, people, pulse groups, search, stale threshold and sort all live in the URL, so the view is linkable and returning from a ticket restores it exactly. |
| Navigation | Key and title are real links. Plain click navigates to the ticket; ⌘/Ctrl-click and middle-click open a new tab; Back returns to the console on the row you left. |
| Keyboard | JK move · ↵ expand · ←→ collapse a section · O open · / search · G grouping · 1–6 pulse groups · ⇧F full screen · Esc closes the innermost thing. |
| Freshness | Data refreshes in the background but the view holds still; changes surface as a “3 changes · refresh” chip rather than reordering rows mid-sentence. |
| Quiet Monday | When nothing moved, the in-flight sections still render and the quiet roster shows everyone — the screen is never blank. |
| Narrow screens | The row sheds its tail right-to-left — time, then counts, then the transition pair — keeping chevron, key, title, avatar and age. Facets collapse into one Filters button. |