-
-
Notifications
You must be signed in to change notification settings - Fork 5
Design System Primitives
Reusable patterns implemented as CSS classes + DOM factories (not a shared component package). Prefer these over one-off styles.
| Class | Size | File | Behavior |
|---|---|---|---|
.icon-btn |
40×40 | topbar.css |
Transparent + 1px border; fine-pointer hover inverts to accent fill |
.send-btn |
44×44 | input.css |
Primary send/stop; accent fill, --radius-md
|
.input-inset-btn |
inset | input.css |
Attach, voice inside composer |
.chat-new-wide / .chat-new-compact
|
— | sidebar.css |
Outlined new-chat CTA |
.settings-action-btn |
— | settings-controls.css |
Ghost; --primary and --mn-danger variants |
States: default, hover ((hover: hover) and (pointer: fine)), :focus-visible (2px --mn-focus-ring), :disabled (reduced opacity), active scale on send.
| Class | File | Use |
|---|---|---|
.stat-chip + .c .g .y .r
|
messages.css |
Per-message inference metrics (9px uppercase mono) |
.stats-cell semantic classes |
stats.css |
Desktop metrics strip |
.issues-label[data-swatch] |
issues.css |
Issue label chips; catalog color via --mn-label-*
|
Semantic chip letters: c = accent, g = success, y = warning, r = danger.
| Class / factory | File | Use |
|---|---|---|
#msgInput, .input-bar
|
input.css |
Chat composer |
.settings-input, .settings-select, .settings-textarea
|
settings-controls.css |
Settings fields |
.settings-row |
settings-controls.ts |
Label + control row |
.settings-segment |
settings-controls.css |
Segmented control |
.settings-toggle-row |
settings-controls.css |
Boolean toggle |
Focus: border --mn-accent; caret-color: var(--mn-fg) on text inputs (MIN-168).
| Class | File | Use |
|---|---|---|
| User bubble | messages.css |
background: var(--mn-accent-soft) |
| Assistant bubble | messages.css |
--mn-bg + 1px --mn-border, squared corner toward speaker |
.tool-call-* |
messages.css |
Tool invocation blocks |
.thought-* |
thoughts.css |
Extended thinking UI |
| Class | File | Use |
|---|---|---|
.chat-item-row |
sidebar.css |
Session list; hover --mn-surface-elevated, active accent border |
.chat-item-dot |
sidebar.css |
Streaming / error status dot |
| Class | File | Use |
|---|---|---|
.mn-toast + --success / --error
|
toast.css |
Ephemeral notifications (toast.ts) |
.memory-saved-toast |
memory-saved-toast.css |
Queued memory confirmation with reject/open actions and expiry progress (memory-saved-toast.ts) |
.visually-hidden |
global.css |
Screen-reader-only |
.icon-svg |
global.css |
18px stroke icons |
settings-controls.ts builds:
-
createSettingsRow()— label + control column -
createSettingsSelect(),createSettingsInput(),createSettingsTextarea() -
createSettingsSegment(),createSettingsToggleRow() -
createSettingsGroup()— bordered group with title
Used across Settings, Compare, Scheduler, and other settings-like surfaces.
.mode-mask-icon in mode-icons.css — CSS mask icons tinted with --mn-fg / accent per operating mode.
These repeat 2× but differ in context; do not extract until a third identical use appears:
- App-specific page headers (Research, Brain)
- Orchestrate board card chrome (domain-specific layout)
- Benchmark chart legends (data-viz specific)
Generated from documentation/. Do not edit generated pages directly.
Extensions
Developer reference
Contributing
- Accessibility and keyboard-first audit
- Minnow apps
- Architecture overview
- Command reference
- LAN companion
- Orchestrator V2 board testing
- Contributing to Minnow
- Setup from source
Design system
- CSS file map
- Layout shell
- UI primitives
- Minnow design system (current state)
- Minnow Shell
- Themes
- Design tokens
Guides
- Accessibility and keyboard-first audit
- Minnow apps
- Architecture overview
- Command reference
- Configuration & storage
- Keyboard shortcuts
- LAN companion
- Model bench: Flip Match v1
- Orchestrate board testing
- Minnow guides
- Release E2E testing guide
- Setup guide
- Troubleshooting
- Minnow wiki
Maintainers
- macOS release signing & notarization
- Prompt ownership matrix (MIN-379)
- Releasing Minnow
- Settings reference
- GitHub Wiki publishing
Apps
Chat
Core concepts
Extend Minnow
Get started
Orchestrate
Overview
Reference