Skip to content

jhwheeler/fluidlan-theme

Repository files navigation

Fluidlan

A cool-toned color theme for editors and terminals, in dark and light variants.

Derived from space-vim-dark and spacemacs-dark-theme, with a fully harmonized palette — all colors sit in the cool spectrum with consistent saturation and lightness. No ochre, no neon.

Fluidlan Color Theme

Variants

  • Fluidlan Dark — transparent-friendly dark theme
  • Fluidlan Light — warm parchment background with high-contrast syntax colors

Supported targets

Editors (syntax highlighting, dark + light):

  • Neovim (Lua, with Treesitter + LSP + diagnostics + plugin support)
  • Vim (VimScript, generated)
  • VS Code
  • Helix
  • Zed

Terminals (ANSI 16 colors, dark + light):

  • Alacritty
  • Kitty
  • tmux
  • WezTerm
  • Windows Terminal
  • Ghostty

Installation

Neovim

lazy.nvim:

{
  'jhwheeler/fluidlan-theme',
  lazy = false,
  priority = 1000,
  config = function()
    vim.cmd.colorscheme('fluidlan')       -- dark
    -- vim.cmd.colorscheme('fluidlan-light') -- light
  end,
}

packer.nvim:

use {
  'jhwheeler/fluidlan-theme',
  config = function()
    vim.cmd.colorscheme('fluidlan')
  end,
}

For transparent background (dark variant):

vim.api.nvim_set_hl(0, 'Normal', { bg = 'NONE' })
vim.api.nvim_set_hl(0, 'LineNr', { bg = 'NONE' })
vim.api.nvim_set_hl(0, 'SignColumn', { bg = 'NONE' })

Vim

vim-plug:

Plug 'jhwheeler/fluidlan-theme'
colorscheme fluidlan       " dark
" colorscheme fluidlan-light " light
set termguicolors

VS Code

Copy editors/vscode/ and open it with code --extensionDevelopmentPath=editors/vscode, or package it with vsce package. The extension manifest includes both Fluidlan Dark and Fluidlan Light.

Release

Repo releases are tag-based. Run scripts/release.sh vX.Y.Z from a clean working tree to validate the generated themes, create the tag, and push it. GitHub Actions then creates the GitHub Release for the tag. For Neovim, this is the real-world release path: users pin or install the tagged git revision through their plugin manager.

Helix

Copy editors/helix/fluidlan.toml (or fluidlan-light.toml) to ~/.config/helix/themes/, then set in config.toml:

theme = "fluidlan"

Zed

Copy editors/zed/fluidlan.json (or fluidlan-light.json) to ~/.config/zed/themes/, then select from the theme picker.

Terminals

Copy the relevant file to your terminal's theme/config directory:

Terminal Dark Light Destination
Alacritty fluidlan.toml fluidlan-light.toml ~/.config/alacritty/themes/ and import in config
Kitty fluidlan.conf fluidlan-light.conf ~/.config/kitty/themes/ and include themes/fluidlan.conf in ~/.config/kitty/kitty.conf
tmux fluidlan.conf fluidlan-light.conf ~/.config/tmux/themes/ and source-file in config
WezTerm fluidlan.toml fluidlan-light.toml ~/.config/wezterm/colors/ then config.color_scheme = "Fluidlan Dark"
Windows Terminal fluidlan.json fluidlan-light.json Add to schemes array in settings.json
Ghostty fluidlan fluidlan-light ~/.config/ghostty/themes/ then theme = fluidlan

All terminal files are in their respective terminals/ subdirectory.

Lualine

A matching lualine theme is included:

require('lualine').setup {
  options = { theme = 'fluidlan' },
}

Palette

All colors are defined in palette.json — the single source of truth for both variants. Edit it and run python3 generate.py to regenerate all editor and terminal themes, including VS Code.

The Neovim Lua theme (lua/fluidlan/theme.lua) maps palette colors to Neovim-specific highlight groups (Treesitter, LSP, plugins) and is the only hand-maintained file.

About

Fluidlan Theme: Spacemacs-inspired, cool-toned color theme for editors and terminals

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors