Polar is a darker, elegant evolution of the original Nord theme.
A dark theme that invites focus, not attention.
- 🌈 Extensive support for
TreeSittersyntax highlighting - 🔌 Compatible with popular plugins out of the box
- 🎨 Faithful to the original Nord theme design
- 💅 Lualine theme included
- 🖥️ Terminal colors support
- TreeSitter
- LSP Diagnostics
- LSP Trouble
- Git Graph
- Git Signs
- Git Gutter
- Telescope
- NvimTree
- NeoTree
- WhichKey
- Lualine
- Leap
- Barbar
- Bufferline
- Cmp
- Navic
- Aerial
- Notify
- RainbowDelimiter
- Neogit
- highlight-undo.nvim
- Illuminate
- Codeium
- Flash.nvim
- Glance
- Markview
- Toggleterm
- Blink.cmp
- fzf-lua
- Bufferline
- Snacks
Your preferred plugin is missing? Open an issue or, even better, open a pull request 😉.
Download with your favorite package manager.
-- Using Lazy
{
"webhooked/polar.nvim",
lazy = false,
priority = 1000,
}
-- Using Packer
use "webhooked/polar.nvim"- Neovim >= 0.8.0
- Terminal with truecolor support
As simple as writing:
colorscheme polarOr in Lua:
vim.cmd("colorscheme polar")There is no need to call setup if you are ok with the defaults.
-- Default options:
require("polar").setup({
-- your configuration comes here
-- or leave it empty to use the default settings
transparent = false, -- Enable this to disable setting the background color
terminal_colors = true, -- Configure the colors used when opening a `:terminal` in Neovim
diff = { mode = "bg" }, -- enables/disables colorful backgrounds when used in diff mode. values : [bg|fg]
borders = true, -- Enable the border between verticaly split windows visible
errors = { mode = "bg" }, -- Display mode for errors and diagnostics
-- values : [bg|fg|none]
search = { theme = "vim" }, -- theme for highlighting search results
-- values : [vim|vscode]
styles = {
-- Style to be applied to different syntax groups
-- Value is any valid attr-list value for `:help nvim_set_hl`
comments = { italic = true },
keywords = {},
functions = {},
variables = {},
-- To customize lualine/bufferline
bufferline = {
current = {},
modified = { italic = true },
},
lualine_bold = false, -- When `true`, section headers in the lualine theme will be bold
},
-- colorblind mode
-- see https://github.com/EdenEast/nightfox.nvim#colorblind
-- simulation mode has not been implemented yet.
colorblind = {
enable = false,
preserve_background = false,
severity = {
protan = 0.0,
deutan = 0.0,
tritan = 0.0,
},
},
-- Override the default colors
---@param colors Polar.Palette
on_colors = function(colors) end,
--- You can override specific highlights to use other groups or a hex color
--- function will be called with all highlights and the colorScheme table
---@param colors Polar.Palette
on_highlights = function(highlights, colors) end,
})
-- setup must be called before loading
vim.cmd("colorscheme polar")💡 Important Notes
Configuration: Make sure to set your configuration BEFORE loading the color scheme with colorscheme polar.
nvim-lualine/lualine.nvim
To enable the `polar` theme for `Lualine`, simply specify it in your lualine settings:require('lualine').setup {
options = {
-- ... your lualine config
theme = 'polar'
-- ... your lualine config
}
}dnlhc/glance.nvim
Polar provide default options for `glance.nvim` to have a better integration:require("lazy").setup({
{
"dnlhc/glance.nvim",
opts = require("polar.plugins.glance").make_opts({
folds = {
folded = false,
},
}),
}
}
)akinsho/bufferline.nvim
To use this theme for `bufferline`, add this to your config:require("bufferline").setup({
options = {
separator_style = "thin",
},
highlights = require("polar.plugins.bufferline").akinsho(),
})akinsho/toggleterm.nvim
Polar provide default options for `toggleterm.nvim` to have a better integration:require("toggleterm").setup(
require("polar.plugins.toggleterm").make_opts({
-- your custom options
})
)- arcticicestudio for the original Nord color palette and themes
