Skip to content

Theme

Theme colors are loaded from:

  • $XDG_CONFIG_HOME/gpuishell/theme.toml
  • or ~/.config/gpuishell/theme.toml (fallback)

theme.toml is written automatically when you apply a theme from the launcher. If missing or invalid, the default theme is used.

Color values accept:

  • #RRGGBB (e.g., #007ACC)
  • #RRGGBBAA (e.g., #007ACCFF with alpha channel)

Used for main backgrounds and container elements.

FieldDefaultDescription
primary#1E1E1EMain/darkest background for large containers
secondary#252526Secondary background for cards and sections
tertiary#2D2D2DTertiary background for inputs and hover states
elevated#333333Elevated background for dropdowns and tooltips

Used for text and foreground elements.

FieldDefaultDescription
primary#FFFFFFPrimary text (brightest, highest contrast)
secondary#CCCCCCSecondary text (slightly muted)
muted#888888Muted text for labels and hints
disabled#6E6E6EDisabled/inactive text
placeholder#6E6E6EPlaceholder text in inputs

Used for borders and outlines.

FieldDefaultDescription
default#3C3C3CStandard border color
subtle#2D2D2DSubtle/less visible borders
focused#007ACCFocused/active border (accent color)

Brand/accent colors used for highlights and interactions.

FieldDefaultDescription
primary#007ACCPrimary accent (Zed blue)
selection#094771Selection background color
hover#1177BBHover state accent color

Semantic colors for status indicators.

FieldDefaultDescription
success#4ADE80Success/positive state (green)
warning#FBBF24Warning state (amber)
error#F87171Error/critical state (red)
info#60A5FAInfo state (blue)

Colors for buttons, toggles, and interactive elements.

FieldDefaultDescription
default#3B3B3BDefault/idle state
hover#454545Hover state
active#505050Active/pressed state
toggle_on#007ACCToggle in “on” state
toggle_on_hover#1177BBToggle “on” state hover
FieldDefaultDescription
font_size_base13.0Base font size in pixels (all other sizes are calculated from this)
[bg]
primary = "#1E1E1E"
secondary = "#252526"
tertiary = "#2D2D2D"
elevated = "#333333"
[text]
primary = "#FFFFFF"
secondary = "#CCCCCC"
muted = "#888888"
disabled = "#6E6E6E"
placeholder = "#6E6E6E"
[border]
default = "#3C3C3C"
subtle = "#2D2D2D"
focused = "#007ACC"
[accent]
primary = "#007ACC"
selection = "#094771"
hover = "#1177BB"
[status]
success = "#4ADE80"
warning = "#FBBF24"
error = "#F87171"
info = "#60A5FA"
[interactive]
default = "#3B3B3B"
hover = "#454545"
active = "#505050"
toggle_on = "#007ACC"
toggle_on_hover = "#1177BB"
font_size_base = 13.0

The font_size_base value determines all other font sizes used in the application:

  • xs (extra small): base × 0.77
  • sm (small): base × 0.85
  • md (medium): base × 1.08
  • lg (large): base × 1.23
  • xl (extra large): base × 1.38

For example, with font_size_base = 13.0:

  • xs ≈ 10px
  • sm ≈ 11px
  • md ≈ 14px
  • lg ≈ 16px
  • xl ≈ 18px