- CSS 100%
Two drop-in FreshRSS themes using morhetz's Gruvbox palette. Each ships metadata.json, a full gruvbox.css, 43 pre-recolored icons (yellow starred, red unread, tan defaults), a loader and a theme-picker thumbnail. Gruvbox Dark: orange highlight + aqua links on bg0 cream Gruvbox Light: faded-orange highlight + faded-blue links on cream bg0 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| gruvbox-dark | ||
| gruvbox-light | ||
| .gitignore | ||
| README.md | ||
FreshRSS — Gruvbox
Two FreshRSS themes using morhetz's Gruvbox palette.
| Theme | Folder | Preview |
|---|---|---|
| Gruvbox Dark | gruvbox-dark/ |
|
| Gruvbox Light | gruvbox-light/ |
Install
FreshRSS loads themes from /var/www/FreshRSS/p/themes/<ThemeName>/ inside
the container. To install one of these themes, mount its folder there as a
read-only volume in your existing FreshRSS Docker setup. The official docs
cover this here:
https://freshrss.github.io/FreshRSS/en/admins/16_Docker.html
In your docker-compose.yml (or docker run -v), add the theme folder you
want next to whatever volumes you already have:
services:
freshrss:
image: freshrss/freshrss:latest
volumes:
# ...your existing volumes (data, extensions, etc.)
- /path/to/freshrss-gruvbox/gruvbox-dark:/var/www/FreshRSS/p/themes/Gruvbox-Dark:ro
- /path/to/freshrss-gruvbox/gruvbox-light:/var/www/FreshRSS/p/themes/Gruvbox-Light:ro
Mount only the variant(s) you want — you don't have to mount both. The :ro
flag is important; FreshRSS shouldn't be writing into a theme folder.
Restart the container, then in the FreshRSS UI go to Settings → Display → Theme and pick Gruvbox Dark or Gruvbox Light.
Non-Docker install
If you're running FreshRSS on the host directly, copy the theme folder into
your install's p/themes/ directory:
cp -r gruvbox-dark /path/to/FreshRSS/p/themes/Gruvbox-Dark
Per the FreshRSS design docs, third-party themes dropped into the install directly may be overwritten on upgrade. Mounting via Docker volume avoids that since the theme lives outside the container's filesystem.
Customising
All colors are CSS variables in the :root block at the top of
gruvbox-{dark,light}/gruvbox.css. Swap --highlight, --accent, or any of
the --gb-* palette values to retheme without touching the rest of the file
— for example, point --highlight at --gb-yellow for a yellow-accent
variant, or replace the palette entirely with
Gruvbox Material hex values.
Credits
- Palette: Gruvbox by morhetz (MIT)
- Structural CSS patterns borrowed from the FreshRSS Nord theme by joelchrono12 (GPL-3.0+)
- Light variant mapping inspired by brad.quest