Skip to content

danfry1/mind-the-gap

Repository files navigation

Mind the Gap logo

Mind the Gap

A vibrant dark color theme inspired by the London Underground tube map.
Built for Neovim, VS Code, terminals, tmux, and CLI tools.

Mind the Gap theme preview

Features

  • Tube map colours — every accent is named after a line, using official TfL values where possible
  • Single source of truth — every color lives in palette.json, all outputs are generated
  • WCAG AA contrast — validated at build time, never ships unreadable text
  • 15 Neovim plugin integrations — Telescope, cmp, gitsigns, mini.nvim, noice, trouble, flash, snacks, and more
  • Treesitter + LSP semantic tokens — full highlighting with 450+ groups
  • 13 terminal/CLI targets — Kitty, Alacritty, WezTerm, Ghostty, iTerm2, foot, Windows Terminal, tmux, fzf, bat, delta, lazygit, OpenCode
  • Transparent mode — use your terminal's background
  • Configurable italics — toggle italics for comments and keywords

Palette


Elizabeth
#9B70D8
keywords, primitives

Hammersmith
#F3A9BB
operators, flow

Overground
#EE7C0E
types, components

District
#00B850
strings, additions

Victoria
#0098D4
functions, props

DLR
#00A4A7
tags, escape

Central
#E32017
errors, deletions

Circle
#FFD300
numbers, warnings
Backgrounds & foregrounds
Swatch Name Hex Role
Crust #04081a Deepest background
Mantle #081020 Status bars, borders
Base #0c1628 Editor background
Surface 0 #162038 Floats, selections
Surface 1 #1e2844 Active UI elements
Surface 2 #283450 Scrollbars, subtle UI
Swatch Name Hex Role
Text #d8dce8 Primary text
Subtext #a8b0c0 Secondary text
Overlay #708098 UI elements
Comment #587088 Comments

Installation

Neovim

lazy.nvim

{
  "danfry1/mind-the-gap",
  lazy = false,
  priority = 1000,
  config = function()
    require("mindthegap").setup()
    vim.cmd("colorscheme mindthegap")
  end,
}
packer.nvim
use {
  "danfry1/mind-the-gap",
  config = function()
    require("mindthegap").setup()
    vim.cmd("colorscheme mindthegap")
  end,
}

Options

All options are optional — defaults work out of the box.

require("mindthegap").setup({
  transparent = false, -- set to true to use your terminal's background
  italics = true,      -- set to false to disable italic comments/keywords
  palette_overrides = { -- override base palette colors before they cascade to all groups
    foregrounds = { text = "#c8c8d8" },
    accents = { elizabeth = "#8060C0" },
  },
  custom_highlights = function(colors, variant)
    return {
      Normal = { bg = "#101828" },
    }
  end,
})

Plugin support

Highlight groups are included for these plugins (loaded automatically, no config needed):

Plugin Plugin Plugin
telescope.nvim nvim-cmp gitsigns.nvim
mini.nvim noice.nvim nvim-notify
trouble.nvim flash.nvim neo-tree.nvim
oil.nvim lazy.nvim which-key.nvim
indent-blankline.nvim dashboard-nvim / alpha-nvim snacks.nvim

VS Code

Search for "Mind the Gap" in the Extensions Marketplace, or install from the command line:

code --install-extension DanielFry.mind-the-gap-color-theme
Install from source
cd editors/vscode
npx @vscode/vsce package
code --install-extension mind-the-gap-color-theme-*.vsix

Zed

Search for "Mind the Gap" in the Zed extension marketplace, or install locally:

mkdir -p ~/.config/zed/themes
cp editors/zed/themes/mindthegap.json ~/.config/zed/themes/

Then select Mind the Gap from the theme picker (cmd+k cmd+t).


Terminals

Kitty
curl -o ~/.config/kitty/mindthegap.conf https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/kitty/mindthegap.conf

Then add to ~/.config/kitty/kitty.conf:

include mindthegap.conf
Alacritty
curl -o ~/.config/alacritty/mindthegap.toml https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/alacritty/mindthegap.toml

Then add to ~/.config/alacritty/alacritty.toml:

import = ["~/.config/alacritty/mindthegap.toml"]
WezTerm
mkdir -p ~/.config/wezterm/colors
curl -o ~/.config/wezterm/colors/mindthegap.toml https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/wezterm/mindthegap.toml

Then set in ~/.config/wezterm/wezterm.lua:

config.color_scheme = "Mind the Gap"
iTerm2
curl -o /tmp/mindthegap.itermcolors https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/iterm2/mindthegap.itermcolors
open /tmp/mindthegap.itermcolors

Then go to iTerm2 > Settings > Profiles > Colors > Color Presets... and select Mind the Gap.

Ghostty
mkdir -p ~/.config/ghostty/themes
curl -o ~/.config/ghostty/themes/mindthegap https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/ghostty/mindthegap

Then add to ~/.config/ghostty/config:

theme = mindthegap
foot
curl -o ~/.config/foot/mindthegap.ini https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/foot/mindthegap.ini

Then add to ~/.config/foot/foot.ini:

include=~/.config/foot/mindthegap.ini
Windows Terminal
curl -o "$env:LOCALAPPDATA\mindthegap.json" https://raw.githubusercontent.com/danfry1/mind-the-gap/main/terminals/windows-terminal/mindthegap.json

Then copy the contents into the schemes array in your Windows Terminal settings.json, and set "colorScheme": "Mind the Gap" on the desired profile.


Tmux

Via TPM (recommended)

# ~/.tmux.conf
set -g @plugin 'danfry1/mind-the-gap'
run '~/.tmux/plugins/tpm/tpm'
Manual
# In ~/.tmux.conf
run-shell /path/to/mind-the-gap/tmux/mindthegap.tmux

CLI Tools

fzf
curl -o ~/.config/fzf/mindthegap.sh https://raw.githubusercontent.com/danfry1/mind-the-gap/main/cli/fzf/mindthegap.sh

Then source it in your shell rc:

source ~/.config/fzf/mindthegap.sh
bat
curl -o "$(bat --config-dir)/themes/mindthegap.tmTheme" https://raw.githubusercontent.com/danfry1/mind-the-gap/main/cli/bat/mindthegap.tmTheme
bat cache --build

Then set the theme in ~/.config/bat/config:

--theme="Mind the Gap"
delta
curl -s https://raw.githubusercontent.com/danfry1/mind-the-gap/main/cli/delta/mindthegap.gitconfig >> ~/.gitconfig

Then set delta as your Git pager in ~/.gitconfig:

[core]
  pager = delta
lazygit
curl -s https://raw.githubusercontent.com/danfry1/mind-the-gap/main/cli/lazygit/mindthegap.yml >> "$(lazygit --print-config-dir)/config.yml"
OpenCode
mkdir -p ~/.config/opencode/themes
curl -o ~/.config/opencode/themes/mindthegap.json https://raw.githubusercontent.com/danfry1/mind-the-gap/main/cli/opencode/mindthegap.json

Then select Mind the Gap using the /theme command in OpenCode, or set it in your tui.json:

{
  "theme": "mindthegap"
}

Contributing

palette.json is the single source of truth for all colors. All theme files are generated from it.

bun install          # install dependencies
bun run generate     # regenerate all outputs from palette.json
bun test             # run tests
bun run validate     # check WCAG AA contrast ratios
bun run check        # verify generated files are up to date
bun run typecheck    # typecheck TypeScript

Please run bun run generate and commit the results before opening a PR.

License

MIT

About

A vibrant dark color theme inspired by the London Underground tube map

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors