A mostly monochrome colorscheme with a touch of glowing.
Note
More π· screenshots here
Note
Currently available Plugins and Extras are mostly based on what I use, but feel free to open an issue or a PR to suggest a new one!
π¨ Supported Plugins
π Extras
| Tool | Extra |
|---|---|
| Ghostty | extras/ghostty |
| Helix | extras/helix |
| Kitty | extras/kitty |
| Vim | extras/vim |
| VS Code | extras/vscode |
| WezTerm | extras/wezterm |
| Zed | extras/zed |
Install the theme with your preferred package manager, such as folke/lazy.nvim:
{
"wnkz/monoglow.nvim",
lazy = false,
priority = 1000,
opts = {},
}vim.cmd[[colorscheme monoglow]]colorscheme monoglow
" There are also colorschemes for the different styles.
colorscheme monoglow-z
colorscheme monoglow-lack
colorscheme monoglow-void
colorscheme monoglow-lightSee PALETTE.md for all styles (z, lack, void, light) with WCAG contrast ratios.
How the highlight groups are calculated:
colorsare determined based on your configuration, with the ability to override them usingconfig.on_colors(colors).- These
colorsare utilized to generate the highlight groups. config.on_highlights(highlights, colors)can be used to override highlight groups.
For default values of colors and highlights, please consult the
z,
lack,
void, and
light palettes, as well as the
base highlights.
Changing Colors
require("monoglow").setup({
-- Change the "glow" color
on_colors = function(colors)
colors.glow = "#fd1b7c"
end
})Changing Highlight Styles
You can customize styles (italic, bold, etc.) for any highlight group using on_highlights.
Note:
on_highlightsreplaces the entire highlight definition. To preserve existing properties (likefg), include them in your override or usevim.tbl_extend.
require("monoglow").setup({
on_highlights = function(hl, c)
-- Override with full definition (recommended)
hl["@function"] = { fg = c.syntax.func_def, italic = true, bold = true }
hl.Boolean = { fg = c.syntax.boolean, bold = true, italic = true }
hl["@keyword"] = { fg = c.syntax.keyword, italic = true }
-- Or use vim.tbl_extend for partial overrides
hl.Comment = vim.tbl_extend("force", hl.Comment, { bold = true })
end,
})See lua/monoglow/groups/base.lua and
lua/monoglow/groups/treesitter.lua for
all available highlight groups.
Extra color configs for Ghostty, Kitty, Helix, Vim, VS Code, WezTerm, and Zed can be found in extras/. To use them, refer to their respective documentation.
A light variant is also available for those who prefer it.
Pull requests are welcome.
To build the colorscheme, I took everything I liked about the "colors" of slugbyte/lackluster.nvim, I added the amazing touch of glow and bright operators from Aliqyan-21/darkvoid.nvim, and I used folke/tokyonight.nvim for the code structure.
This project is licensed under the Apache License, Version 2.0. See the LICENSE file for details.
- Portions of this project include code derived from tokyonight.nvim, which is licensed under the Apache License, Version 2.0.
- Inspiration for colors and arrangement comes from lackluster.nvim and darkvoid.nvim, both licensed under the MIT License.
See the NOTICE file for attributions and details.




