refryt

Themes

Every colour theme in refryt is a .css file in the themes folder, including the 23 the app ships with. Edit one, add one, delete one.

The themes folder

The first time refryt starts, it writes its 23 themes there: Classic, Catppuccin, Nord, Gruvbox, Tokyo Night, Dracula, Rosé Pine, Everforest and Solarized, each light and dark flavour as its own file, and Spotify. From then on the folder is all there is:

PlatformFolder
Linux~/.config/refryt/themes/
Windows%APPDATA%\refryt\config\themes\
macOS~/Library/Application Support/refryt/themes/
Flatpak~/.var/app/io.github.gridoe.refryt/config/refryt/themes/

Settings → Open Themes Folder opens it. The shipped files are the best examples to copy.

Dark and light

Each theme is dark or light, set by its color-scheme line. The Theme dropdown lists the dark themes while the app is in dark mode and the light ones in light mode, and remembers one pick for each; Mode (System / Dark / Light) chooses between them. If the folder has no theme of the mode on screen, a built-in Classic paints until you add one.

The file

/* midnight.css */
:root {
  color-scheme: dark;
  --base: #16161e;
  --text: #c0caf5;
  --accent: #ff9e64;
}

Only --base, --text and --accent are required. Everything else is derived from them the same way the shipped themes fill in what their upstream palettes leave out. You set only what you want to change.

This is CSS syntax, not a stylesheet: refryt draws its own interface, so there are no selectors to match. Declarations inside :root { }, any other block, or no block at all mean the same thing. /* comments */ are fine. Colours can be written #rgb, #rrggbb or rgb(r, g, b).

Variables

VariableWhat it paintsWhen left out
--baseThe cards: most of the apprequired
--textBody textrequired
--accentPlay buttons, selection, switches, linksrequired
--gutterThe gap behind the cards--base, darkened
--popupMenus and popupsbetween --gutter and --base
--surfaceChips, inputs, the search field--base stepped toward --text
--surface-hoverA hovered surface--surface stepped toward --text
--surface-activeA pressed or selected surfacea larger step
--outlineHairlinesa small step from --surface
--subtextSecond-rank text: artists, albums--text faded toward --base
--mutedThird-rank text: counts, help linesfaded further
--accent-hoverA hovered accent--accent lightened (dark) or darkened (light)
--on-accentText and icons on the accentblack or white, whichever reads better
--dangerErrorsa red
--warningWarningsan amber

color-scheme: dark or light says which mode the theme belongs to. Without it, refryt guesses from --base.

Transparency and blur

Settings has window transparency and background blur, applied on top of whichever theme is chosen. Blur works on KDE Plasma under Wayland, compositors with ext-background-effect (niri, GNOME 51 and newer), Windows and macOS.

When something is off

To try a theme for one run without changing your settings:

refryt --scheme catppuccin-frappe

The name is matched ignoring case, spaces, hyphens and accents.