yonatan-perel/lake-dweller.nvim

github github
colorscheme
stars 33
issues 0
subscribers 0
forks 1
CREATED

UPDATED


lake-dweller.nvim

Requirements

  • Neovim >= 0.8.0
  • termguicolors enabled
  • nvim-treesitter (recommended for full syntax highlighting)

Installation

lazy.nvim

{
    "yonatanperel/lake-dweller.nvim",
    lazy = false,
    priority = 1000,
    config = function()
        require("lake-dweller").setup({
            variant = "lake-dweller", -- "lake-dweller", "pond-dweller", "ocean-dweller", "harbor-dweller", or "nay-dweller"
        })
        vim.cmd.colorscheme("lake-dweller")
    end,
}

Configuration

require("lake-dweller").setup({
    variant = "lake-dweller",  -- "lake-dweller", "pond-dweller", "ocean-dweller", "harbor-dweller", or "nay-dweller"
    transparent = false,       -- enable transparent background
    italics = true,            -- enable italic text
    float_background = false,  -- distinct background for floating windows
})

Extras

Theme files for other applications live under extras/, with one file per variant in each directory:

  • WezTermextras/wezterm/<variant>.toml
  • Ghosttyextras/ghostty/<variant>
  • Alacrittyextras/alacritty/<variant>.toml

Lualine

require("lualine").setup({
    options = {
        theme = require("lualine.themes.lake-dweller"),
    },
})

lake-dweller

Dark navy with soft greens and pale blues. The default — balanced, low-contrast.

Color Hex Usage
#0e0e16 Dark Navy #0e0e16 Background
#d8d8d8 Light Grey #d8d8d8 Base text
#8ac490 Soft Green #8ac490 Comments
#858d95 Muted Slate #858d95 Keywords
#b0c0e0 Pale Blue #b0c0e0 Functions
#70a8a8 Muted Cyan #70a8a8 Types
#d58ca6 Rosy Pink #d58ca6 Strings
#ef8a90 Bright Red #ef8a90 Constants, errors

pond-dweller

Dusky purple background with pastel mints and blush pinks. Softer, slightly warmer.

Color Hex Usage
#1a1826 Dusk Purple #1a1826 Background
#e0dce8 Soft Lavender #e0dce8 Base text
#a8d4b0 Pastel Mint #a8d4b0 Comments
#b0a8c0 Faded Lilac #b0a8c0 Keywords
#c4d0ee Light Periwinkle #c4d0ee Functions
#98c8c8 Soft Teal #98c8c8 Types
#e8b0c4 Blush Pink #e8b0c4 Strings
#f0a8b0 Soft Coral #f0a8b0 Constants, errors

ocean-dweller

Near-black abyss with vivid greens and electric blues. Highest contrast.

Color Hex Usage
#080810 Deep Abyss #080810 Background
#e8e8f0 Crisp White #e8e8f0 Base text
#60d890 Vivid Green #60d890 Comments
#90a0b8 Steel Blue #90a0b8 Keywords
#80b0f0 Electric Blue #80b0f0 Functions
#40c8c8 Bright Cyan #40c8c8 Types
#f07098 Hot Pink #f07098 Strings
#ff6070 Vivid Red #ff6070 Constants, errors

harbor-dweller

Slate-stone blue with sage greens and soft orange. Calmer, more saturated.

Color Hex Usage
#1e2030 Slate Stone #1e2030 Background
#cdd6f4 Off White #cdd6f4 Base text
#9ec396 Sage Green #9ec396 Comments
#8b95a0 Slate Grey #8b95a0 Keywords
#7aa2f7 Sky Blue #7aa2f7 Functions
#d4be7e Sandy Khaki #d4be7e Types
#e09778 Soft Orange #e09778 Strings
#e06c75 Muted Red #e06c75 Constants, errors

nay-dweller

Inspired by Jonathan Blow's Emacs theme — deep teal background, sparse cool/pale palette, vivid green comments.

Color Hex Usage
#062329 Deep Teal #062329 Background
#d3b58d Wheat Cream #d3b58d Base text
#c1d1e3 Pale Sky #c1d1e3 Keywords
#fdc35e Warm Gold #fdc35e Functions
#d8a070 Driftwood Tan #d8a070 Types
#44b340 Vivid Green #44b340 Comments
#2ec09c Teal Green #2ec09c Strings
#7ad0c6 Soft Cyan #7ad0c6 Constants, numbers
#1a3478 Deep Blue #1a3478 Selection
#e06c75 Muted Red #e06c75 Errors

Supported Plugins

Philosophy

This theme makes some opinionated decisions based on the following principles:

You don't need a color for everything

Only use distinct colors for specific, common elements—so you can tell at a glance what you're looking at:

  1. Functions
  2. Types
  3. Keywords
  4. Constant values—numbers, booleans, strings, nulls, etc. Strings can use slightly different shades for clarity.
  5. Comments

Keywords don't need your attention

Keywords are the most repetitive part of code and therefore the easiest to read quickly—you don't really need them to stand out.

Comments are important

You should not neglect your comments. They should pop out immediately, while being easy to distinguish from actual code.

Inspiration

License

MIT