Components
UI component patterns using Mantine.
Buttons
Variants:
filled
Ember
Primary actions (Save, Create, Submit)
subtle
Gray
Secondary actions, back buttons
subtle
Brick
Destructive actions
light
Various
Toggle states, soft CTAs
Sizing:
Default size:
smIcon buttons (ActionIcon):
smwith 14-16px icons
<Button variant="filled" color="ember">Save Changes</Button>
<Button variant="subtle">Cancel</Button>
<Button variant="subtle" color="brick">Delete</Button>Form Elements
Common props:
Size:
smVariant:
default(outline) orfilled(in popovers)
List Rows
Standard pattern for Inbox, Task, and Search rows.
Structure:
Styling:
States:
Hover:
background-color: var(--mantine-color-canvas)Selected:
background-color: var(--mantine-color-clay-0)Priority:
border-left: 3px solid {priority-color}
CSS Module for hover-reveal:
Headers
ViewHeader (page-level):
Section headers:
Object header (inline-editable):
Click title to enter edit mode
TextInput with unstyled variant, large bold text
Save on blur or Enter, cancel on Escape
Badges & Tags
Badge:
Tag (with color dot):
Modals & Dialogs
Base Modal:
Confirmation Dialog:
Multi-state modal (progress operations):
Confirmation: Description + requirements list
Progress: Progress bar + operation description
Success/Error: Result message + next action
Cards & Surfaces
Paper/Card:
Collapsible section:
Calendar & Timeline
Month navigation:
Day cell:
Default: text only
Today: accent background (Ember light)
Has content: dot indicator below number
Selected: darker accent background
Timeline markers:
Size: 6-14px based on change density
Color: accent or gray
Hover: tooltip with details
Settings Panels
Panel Structure:
SegmentedControl:
Toggle Setting:
Danger Zone:
Mantine Component Defaults
Last updated