themely GitHub

One keybind re‑themes your whole desktop.

Pick a wallpaper and themely pulls the accent colour out of it, then recolours niri, your terminal, editor, browser, Discord and Spotify. Most apps change live, behind a circle that grows out of the wallpaper you picked.

Try it on this page:

What follows the theme

niri
Borders and one opacity for every window
kitty and your prompt
Colours, opacity, the powerline prompt
GTK and KDE apps
Live, open windows included
VS Code and forks
Antigravity, VSCodium, Cursor
Firefox and Zen
Live, through Pywalfox
Vesktop
Discord recolours as you switch
Spotify
Through spicetify, with a quick restart
slat and btop
Running sessions recolour in place
flowbar, mako, fuzzel
The bar, notifications and launcher

Web pages keep their own colours, and apps with only built-in themes, like the official Discord client, can't be themed.

How a switch works

  1. Press Mod+Shift+T and pick a wallpaper.A strip of your themes slides up over the desktop.
  2. themely reads the wallpaper.It picks the most vivid colour that isn't grey or tiny, and derives the background, text and terminal colours from it. You can override the pick in the dashboard.
  3. Every app changes behind a circular reveal.Configs are rewritten only between themely's marker comments, and each app is told to reload. Everything else in your dotfiles stays yours.

Install

git clone https://github.com/noturbob/themely ~/projects/themely
ln -s ~/projects/themely/themely.py ~/.local/bin/themely
ln -s ~/projects/themely/shell ~/.config/quickshell/themely
themely save --name "My theme" --wallpaper ~/Pictures/wall.jpg

You need niri, Quickshell, ImageMagick and swaybg. The setup guide covers the niri keybind, the marker lines and the one-time steps for each app.