Esc

Theme Guide

Quick start: Create ~/.config/sipnab/sipnab.toml with a [theme] section to customize colors. Or copy one of the preset themes below.

sipnab’s TUI uses 11 semantic color slots that control every visual element. Customize them via the [theme] section in your config file.

Color Slots

SlotDefaultWhat It Affects
backgroundreset (terminal default)Terminal background color
foregroundwhiteDefault text color
headercyanStatus bar, column headers, endpoint labels in call flow
selectedyellowSelected/highlighted row, cursor position, focused item
accentmagentaCorrelation info, PDD annotations, extended flow labels
goodgreenPositive quality (MOS > threshold), success states (InCall, Registered)
warningyellowMedium quality, caution states (Ringing, CANCEL)
badredPoor quality, failures, errors, high loss/jitter
muteddark_graySeparators, pipe characters, disabled text, timestamps
borderwhiteWidget borders, panel frames
highlightLegacy alias for selected (backward compatibility only)

The internal status_bg color (dark blue-gray #303040) is not configurable and is used for the status bar background.

Supported Color Syntax

Named Colors

black, white, red, green, yellow, blue, magenta, cyan, gray (or grey), dark_gray (or dark_grey, darkgray, darkgrey), reset (or default)

Hex RGB

"#RRGGBB" format, e.g., "#ff8800", "#1a1a2e". Requires a terminal with true-color (24-bit) support.

How to Apply

Create or edit your config file at one of these locations (searched in order):

  1. Path specified via --config <FILE>
  2. $SIPNAB_CONFIG environment variable
  3. ~/.config/sipnab/sipnab.toml
  4. ~/.sipnabrc
  5. /etc/sipnab/sipnab.toml

Add a [theme] section with the color values you want to override. Omitted fields use the built-in defaults.

Example Themes

Each theme below includes a TOML config block and a live preview showing how it renders in sipnab’s TUI.

Default (Ayu Mirage)

The built-in theme works on dark terminal backgrounds without any configuration.

[theme]
background = "reset"
foreground = "white"
header = "cyan"
selected = "yellow"
accent = "magenta"
good = "green"
warning = "yellow"
bad = "red"
muted = "dark_gray"
border = "white"
Default Theme
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

Catppuccin Mocha

Pastel palette inspired by the Catppuccin color scheme.

[theme]
background = "#1e1e2e"
foreground = "#cdd6f4"
header = "#89b4fa"
selected = "#f9e2af"
accent = "#cba6f7"
good = "#a6e3a1"
warning = "#fab387"
bad = "#f38ba8"
muted = "#585b70"
border = "#6c7086"
Catppuccin Mocha
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

Nord

Low-contrast theme based on the Nord palette. Easy on the eyes for long monitoring sessions.

[theme]
background = "#2e3440"
foreground = "#d8dee9"
header = "#88c0d0"
selected = "#ebcb8b"
accent = "#b48ead"
good = "#a3be8c"
warning = "#ebcb8b"
bad = "#bf616a"
muted = "#4c566a"
border = "#616e88"
Nord
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

Solarized Dark

[theme]
background = "#002b36"
foreground = "#839496"
header = "#268bd2"
selected = "#b58900"
accent = "#d33682"
good = "#859900"
warning = "#cb4b16"
bad = "#dc322f"
muted = "#586e75"
border = "#657b83"
Solarized Dark
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

Gruvbox Dark

Warm, retro-inspired color scheme.

[theme]
background = "#282828"
foreground = "#ebdbb2"
header = "#83a598"
selected = "#fabd2f"
accent = "#d3869b"
good = "#b8bb26"
warning = "#fe8019"
bad = "#fb4934"
muted = "#665c54"
border = "#7c6f64"
Gruvbox Dark
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

Light Terminal

For light terminal backgrounds (white/cream). Uses darker colors for readability.

[theme]
background = "reset"
foreground = "black"
header = "blue"
selected = "#b35900"
accent = "#8b008b"
good = "#006400"
warning = "#b8860b"
bad = "#cc0000"
muted = "gray"
border = "dark_gray"
Light Terminal
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

High Contrast

Maximum readability for accessibility or bright environments.

[theme]
background = "black"
foreground = "white"
header = "cyan"
selected = "#ffff00"
accent = "#ff00ff"
good = "#00ff00"
warning = "#ffaa00"
bad = "#ff0000"
muted = "gray"
border = "white"
High Contrast
  #  Method     From           To             State
 1  INVITE     alice          bob            InCall
  2  REGISTER   admin          --             Registered
  3  INVITE     charlie        dave           Ringing
  4  INVITE     +15551234      +15559876      Failed
  5  INVITE     1005           1006           Completed

Tips

  • Use reset for background to inherit your terminal’s background color. This is usually the best choice.
  • Hex colors require true-color terminal support (most modern terminals: iTerm2, Alacritty, kitty, WezTerm, Windows Terminal).
  • Use sipnab --dump-config to verify your theme is being loaded.
  • The highlight key is a legacy alias for selected. If both are set, selected takes precedence.