No description
  • JavaScript 65.8%
  • CSS 26%
  • Python 3.3%
  • HTML 2.5%
  • Shell 1.3%
  • Other 1.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
daniel f7e8e856f8
All checks were successful
Mossfire web app / test (push) Successful in 40s
Mossfire web app / publish (theme.home.dpis.dk, home) (push) Successful in 3s
Mossfire web app / publish (tema.uhyre.dk, global) (push) Successful in 3s
Merge pull request 'feat(studio): add Mossfire Codex to the popular presets' (#67) from mossfire-codex-preset into main
Reviewed-on: #67
2026-10-09 11:38:17 +00:00
.forgejo/workflows [work-ctme] Make theme delete undoable with Ctrl+Z (#59) 2026-10-08 15:29:27 +00:00
html Change 2026-10-08 22:48:52 +02:00
reports Change 2026-10-08 22:48:52 +02:00
research_notes/Pretty Linux status bars Change 2026-10-08 22:48:52 +02:00
studio feat(studio): add Mossfire Codex to the popular presets 2026-10-09 11:33:03 +00:00
themes Change 2026-10-08 22:48:52 +02:00
AGENTS.md [work-0hgz] AGENTS.md: skip Keeper review in mossfire 2026-10-08 22:19:22 +02:00
README.md Change 2026-10-08 22:48:52 +02:00

Mossfire

A dark forest theme: olive-moss backgrounds, a leafy emerald for focus, and amber, coral, magenta, cyan and blue accents.

Palette

Role Hex Role Hex
bg0 (base) #0e140c green (focus) #2fd27a
bg1 (panels) #151f12 amber (primary accent) #ffae2b
bg2 (surfaces) #1f2d1a orange #ff8a2a
bg3 (borders/selection) #3a5232 red #ff5443
muted (comments) #7a9168 yellow #ffc22e
fg dim #c9cfb2 blue #4aa3ff
fg #e9ecd6 magenta #ff5fa8
fg bright #fbfdf0 cyan #1ccfb4

ANSI brights: red #ff7d6e, green #66ec9f, yellow #ffd866, blue #80c0ff, magenta #ff8fc3, cyan #5ae6cf.

Web app

studio/index.html is a web app to design your own theme from this one, import other themes, and export files for every app below. See studio/README.md.

Install

# shared bits
mkdir -p ~/.config/mossfire
cp themes/shell/* themes/p10k/* ~/.config/mossfire/

Alacritty: copy themes/alacritty/mossfire.toml to ~/.config/alacritty/, then add import = ["~/.config/alacritty/mossfire.toml"] under [general] in alacritty.toml. Bold text uses bright colors.

Regolith 3 (i3xrocks, bar, borders, gnome-terminal, ilia): a full Regolith look.

mkdir -p ~/.config/regolith3/looks && cp -r themes/regolith/mossfire ~/.config/regolith3/looks/
# in ~/.config/regolith3/Xresources:
#   regolith.look.path: /home/<you>/.config/regolith3/looks/mossfire
regolith-look refresh

wm points ilia at /home/dak/..., so change that path if your home differs. i3xrocks only has global label/value colors, so icons are amber and values cream. Anything in ~/.Xresources gets merged last and wins over the look, so remove old wm.client.* color overrides from there. The Regolith terminal script always sets a red cursor and blue bold text. To fix them, run this after each refresh:

P=/org/gnome/terminal/legacy/profiles:/:$(dconf read /org/gnome/terminal/legacy/profiles:/default | tr -d "'")
dconf write $P/cursor-background-color "'#ffae2b'"; dconf write $P/cursor-foreground-color "'#0e140c'"
dconf write $P/highlight-background-color "'#3a5232'"; dconf write $P/highlight-foreground-color "'#fbfdf0'"
dconf write $P/bold-color-same-as-fg true

GTK: themes/gtk/Mossfire is a GTK3 theme made by recoloring Ayu-Mirage-Dark's CSS and PNG assets onto this palette (themes/gtk/build.py). libadwaita apps ignore GTK themes, so themes/gtk/gtk-4.0.css sets their colors instead.

mkdir -p ~/.local/share/themes && cp -r themes/gtk/Mossfire ~/.local/share/themes/
cp themes/gtk/gtk-4.0.css ~/.config/gtk-4.0/gtk.css
gsettings set org.gnome.desktop.interface gtk-theme Mossfire
gsettings set org.gnome.desktop.interface color-scheme prefer-dark

To rebuild after changing the palette, run python3 themes/gtk/build.py (it needs Pillow and the ayu-theme package installed).

Ghostty: copy themes/ghostty/themes/Mossfire to ~/.config/ghostty/themes/ and set theme = Mossfire in your config. Bold text uses bright colors.

Kitty: copy themes/kitty/mossfire.conf to ~/.config/kitty/ and add include mossfire.conf to kitty.conf.

Firefox: set toolkit.legacyUserProfileCustomizations.stylesheets (or copy themes/firefox/user.js) and copy themes/firefox/chrome/ into your profile folder (about:support → Profile Folder). Then restart Firefox. It themes the browser UI (square, flush tabs) and about: pages; websites keep their own colors.

zsh-syntax-highlighting: source ~/.config/mossfire/mossfire-zsh-highlight.zsh after the plugin.

i3: copy themes/i3/mossfire.conf to ~/.config/i3/, add include ~/.config/i3/mossfire.conf to your config, and swap in its bar {} block (or just its colors {}). Then run i3-msg reload.

Studio downloads of kitty, i3, i3blocks and i3status are named <app>-mossfire.conf so they do not clash. Rename to mossfire.conf when you copy them. Alacritty and Helix downloads likewise use <app>-mossfire.toml; rename to mossfire.toml when installing them. ZIP exports keep each app's directory and original filename.

Bar: use themes/i3blocks/mossfire.conf (put it in ~/.config/i3blocks/) for one color per block, like the preview. Plain i3status only has good/degraded/bad colors, so themes/i3status/mossfire.conf gives you a calmer version. Pick one in the status_command line.

Prompts. Pick one per shell:

  • Starship (zsh, bash or fish): copy themes/starship/starship.toml to ~/.config/starship.toml. For LS_COLORS, also source ~/.config/mossfire/mossfire-colors.sh in zsh/bash.
  • Plain zsh: add source ~/.config/mossfire/mossfire.zsh to ~/.zshrc. This includes LS_COLORS.
  • Plain bash: add source ~/.config/mossfire/mossfire.bash to ~/.bashrc. This includes LS_COLORS.
  • Powerlevel10k: add source ~/.config/mossfire/mossfire-p10k.zsh to ~/.zshrc after the .p10k.zsh line, plus source ~/.config/mossfire/mossfire-colors.sh. It's tuned for the rainbow and classic styles.
  • Fish:
    mkdir -p ~/.config/fish/themes
    cp themes/fish/themes/Mossfire.theme ~/.config/fish/themes/
    fish_config theme save Mossfire
    cp themes/fish/conf.d/mossfire_ls.fish ~/.config/fish/conf.d/          # LS_COLORS
    cp themes/fish/functions/fish_prompt.fish ~/.config/fish/functions/   # skip if using Starship
    

Hermes Agent: themes/hermes/skins/mossfire.yaml themes the CLI, TUI and Hermes Desktop. themes/hermes/dashboard-themes/mossfire.yaml themes the web dashboard. Copy both into the same folders under <hermes-home> (~/.hermes by default). Then run hermes config set display.skin mossfire and pick Mossfire in the dashboard's theme switcher.

Obsidian: copy themes/obsidian/Mossfire to <vault>/.obsidian/themes/, then pick Mossfire in Settings → Appearance → Themes. It uses one dark palette for both the dark and light base themes.

VS Code: copy themes/vscode/mossfire to ~/.vscode/extensions/ and restart VS Code. Then pick Mossfire in Preferences → Theme → Color Theme. It colors the workbench, syntax and integrated terminal. To get a .vsix instead, run npx @vscode/vsce package in that folder.

WezTerm: copy themes/wezterm/colors/Mossfire.toml to ~/.config/wezterm/colors/, then set config.color_scheme = 'Mossfire' in wezterm.lua.

Windows Terminal: paste the object from themes/windows-terminal/mossfire.json into the schemes array in settings.json, then set colorScheme to Mossfire in profiles.defaults or an existing profile. Studio exports an additional themes/windows-terminal/mossfire-profile.json when a font is selected. Merge its keys into profiles.defaults or an existing entry in profiles.list; install the chosen font on Windows. The scheme remains a separate object in schemes. Studio's System mono choice uses Windows Terminal's default, Cascadia Mono. See Windows Terminal color schemes and profile appearance.

tmux: copy themes/tmux/mossfire.conf to ~/.config/tmux/ and add source-file ~/.config/tmux/mossfire.conf to tmux.conf.

Neovim: copy themes/nvim/colors/mossfire.lua to ~/.config/nvim/colors/, then vim.cmd.colorscheme("mossfire"). Lualine: require("lualine").setup({ options = { theme = require("mossfire_lualine") } }) (call it after the colorscheme is set).

Helix: create ~/.config/helix/themes/ if needed and copy themes/helix/themes/mossfire.toml there. Set theme = "mossfire" at the top of ~/.config/helix/config.toml, or run :theme mossfire in Helix. It colors the editor UI, syntax and diagnostics.

bat / delta: copy themes/bat/themes/Mossfire.tmTheme to ~/.config/bat/themes/ (create the directory first), run bat cache --build, then add --theme="Mossfire" to ~/.config/bat/config. Check it with bat --list-themes. Delta uses the same cached syntax theme: set syntax-theme = Mossfire under [delta] in your git config. For a Studio export, use the exported theme name instead of Mossfire. See bat custom themes and delta syntax themes.

btop: create ~/.config/btop/themes/ if needed and copy themes/btop/mossfire.theme there. Set color_theme = "mossfire" in ~/.config/btop/btop.conf, or pick mossfire in btop's theme menu. It colors the resource monitor, box outlines and meter gradients.

Rofi: create ~/.config/rofi/themes/ if needed and copy themes/rofi/mossfire.rasi there. Run rofi -theme mossfire -show drun, or add @theme "mossfire" to ~/.config/rofi/config.rasi. Studio exports include the chosen font at size 12 when set; install that font on the target machine. With no font selected, Rofi keeps its configured font.

The prompts use flat color blocks, so no Nerd Font is needed. JetBrains Mono matches the preview.