Gruvbox dark and light themes for FreshRSS
Find a file
Brad Wenner a6e9819ab6 Initial commit: Gruvbox Dark and Light themes for FreshRSS
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>
2026-04-18 11:35:57 -07:00
gruvbox-dark Initial commit: Gruvbox Dark and Light themes for FreshRSS 2026-04-18 11:35:57 -07:00
gruvbox-light Initial commit: Gruvbox Dark and Light themes for FreshRSS 2026-04-18 11:35:57 -07:00
.gitignore Initial commit: Gruvbox Dark and Light themes for FreshRSS 2026-04-18 11:35:57 -07:00
README.md Initial commit: Gruvbox Dark and Light themes for FreshRSS 2026-04-18 11:35:57 -07:00

FreshRSS — Gruvbox

Two FreshRSS themes using morhetz's Gruvbox palette.

Theme Folder Preview
Gruvbox Dark gruvbox-dark/ dark preview
Gruvbox Light gruvbox-light/ light preview

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