Slatewave (Helix)
August 4, 2026 · View on GitHub
Slatewave (Helix)
A dark Helix theme built around a slate foundation and a teal signature, with sky / rose / purple / amber accents. Part of the Slatewave family — one palette across editors, terminals, prompts, notes, and more.
Slate below, teal above.

Palette
Foundation — slate
The editor, statusline, and popups all live in the slate scale.
| Hex | Tailwind | Where | |
|---|---|---|---|
![]() | #0f172a | slate-900 | ink on accent surfaces (status mode block) |
![]() | #1e293b | slate-800 | statusline, popups, menus, rulers |
![]() | slate-chrome | bufferline background | |
![]() | slate-editor | editor surface, gutter | |
![]() | #334155 | slate-700 | selection, menu selected row |
![]() | slate-guide | indent guide | |
![]() | #475569 | slate-600 | virtual text |
Text — slate (inverse)
| Hex | Tailwind | Where | |
|---|---|---|---|
![]() | #64748b | slate-500 | comments, line numbers, inactive text |
![]() | #94a3b8 | slate-400 | operators, punctuation, inactive statusline |
![]() | #cbd5e1 | slate-300 | parameters, struct fields, properties |
![]() | #e2e8f0 | slate-200 | default foreground |
Signature — teal
The "wave" in Slatewave. Primary accent across the editor and companion prompt.
| Hex | Tailwind | Where | |
|---|---|---|---|
![]() | #5eead4 | teal-300 | primary accent — cursor, active line number, strings, statusline fg, normal mode badge |
![]() | #99f6e4 | teal-200 | types, constructors, inline code, insert mode badge |
Accents
| Hex | Role | |
|---|---|---|
![]() | #38bdf8 | keywords, tags, info diagnostics, select mode badge, markdown links |
![]() | #7dd3fc | functions, methods, JSON/YAML keys |
![]() | #b388ff | storage (const/let/fn), this/self, attributes, directives |
![]() | #fb7185 | numbers, constants, booleans, errors, diff minus |
![]() | #fbbf24 | decorators, escape chars, macros, warnings, diff delta |
Syntax mapping
Mirrors the rest of the Slatewave family — same code lights up the same way across every editor.
| Token | Color | Style | |
|---|---|---|---|
| Comments | ![]() | #64748b | italic |
Keywords (if, return, import) | ![]() | #38bdf8 | — |
Storage (const, let, fn, class) | ![]() | #b388ff | italic |
| Types, constructors | ![]() | #99f6e4 | — |
| Functions, methods | ![]() | #7dd3fc | — |
| Strings | ![]() | #5eead4 | — |
| Numbers, booleans, constants | ![]() | #fb7185 | — |
| Regex | ![]() | #fb7185 | — |
| Escape sequences, macros | ![]() | #fbbf24 | — |
| Decorators / attributes | ![]() | #fbbf24 | italic |
this / self / builtins | ![]() | #b388ff | italic |
| Parameters | ![]() | #cbd5e1 | italic |
| Fields / properties | ![]() | #cbd5e1 | — |
| Operators, punctuation | ![]() | #94a3b8 | — |
| HTML/JSX tags | ![]() | #38bdf8 | — |
| HTML/JSX attributes | ![]() | #b388ff | italic |
| Markdown headings | ![]() | #5eead4 | bold |
| Markdown links | ![]() | #38bdf8 | underline |
| Diff plus / minus / delta | teal / rose / amber | — | — |
Mode colors
Helix surfaces the current editing mode on the statusline and the primary cursor. Slatewave maps each mode to a distinct accent so the active mode is readable at a glance:
| Mode | Badge bg | Cursor bg |
|---|---|---|
| Normal | #5eead4 teal-300 | teal-300 |
| Insert | #99f6e4 teal-200 | teal-200 |
| Select | #38bdf8 sky-400 | sky-400 |
Badge ink is always #0f172a slate-900 for maximum contrast against the accent.
Installation
Requires Helix 24.03+ (for modern theme scopes like ui.bufferline, ui.virtual.inlay-hint, and curly diagnostic underlines).
From a local clone
git clone https://github.com/kevinlangleyjr/helix-slatewave.git
cp helix-slatewave/themes/slatewave.toml ~/.config/helix/themes/slatewave.toml
Then enable it in ~/.config/helix/config.toml:
theme = "slatewave"
Or pick it at runtime:
:set theme slatewave
Helix reloads themes on file save, so you can edit ~/.config/helix/themes/slatewave.toml and changes apply immediately.
Symlink for live editing
If you're tweaking the theme, symlink the repo file instead of copying:
ln -s "$PWD/helix-slatewave/themes/slatewave.toml" ~/.config/helix/themes/slatewave.toml
Customize
Helix themes can inherit from each other via inherits. To override a single key without forking, create ~/.config/helix/themes/slatewave-mine.toml:
inherits = "slatewave"
"ui.background" = { fg = "#e2e8f0", bg = "#0a0f1e" }
"comment" = { fg = "#475569", modifiers = ["italic"] }
Then set theme = "slatewave-mine" in your config. All Slatewave palette names (slate-800, teal-300, purple, …) remain available in the inherited theme.
Slatewave family
One palette. Every tool.
- Editors — VSCode · JetBrains · Xcode · Sublime Text · Zed · Neovim · NvChad
- Terminals — Alacritty · Ghostty · iTerm2 · kitty · Warp · WezTerm · Windows Terminal
- Prompts — Oh My Posh · Powerlevel10k · Starship
- Multiplexer — tmux
- CLI — bat · delta · LSD · btop
- Notes — Obsidian · Logseq · MarkEdit · Anytype
- Launchers — Alfred · Raycast
- Chat — Slack
See getslatewave.com for the full family.
Contributing
Issues and PRs welcome. For palette tweaks, please include a before/after screenshot of the same file so the visual tradeoff is obvious.
License
WTFPL — Do What The Fuck You Want To Public License. See LICENSE.

















