Vaibhav Shinde
Published

Ember — a warm Ghostty theme

Launching Ember, a refined dark and light Ghostty theme with warm orange accents. Soft contrast, easy on the eyes, and a nice match for OpenCode and Pi.

I’ve been daily-driving the same Ghostty theme for months. Today I’m open-sourcing it as Ember — dark and light variants with warm orange accents, tuned until the contrast felt right rather than loud.

Ghostty is already a joy to use. Ember is the coat of paint I wanted on top: charcoal and warm off-white in the dark theme, clean white with deep ink in the light theme, and a burnt-orange cursor that shows up without shouting.

It pairs especially well with OpenCode and Pi. Long agent sessions, diffs, and log spam stay readable when the palette isn’t fighting you.

Preview

Toggle between Ember Dark and Ember Light below. The colors are the real theme values — background, foreground, cursor, and the full 16-color palette.

Ember Dark
opencodegitlogs main clean 
building theme previewRUNNINGokwarn
compile[█████████████████░░░░░░░]72%1.4s
select ────────────────────────────────────────────────
Ember Darktheme
Ember Lighttheme
OpenCodeagent
Piagent
↑↓ navigate · ↵ select · esc close
────────────────────────────────────────────────────────
tree ────────────────────────────────────────────────
themes/
├─ Ember Dark
├─ Ember Light
└─ preview.md
README.md M
────────────────────────────────────────────────────────
diff ────────────────────────────────────────────────
@@ -12,4 +12,5 @@ theme = Ember
context()
-theme = One Dark
+theme = light:Ember Light,dark:Ember Dark
reload()
────────────────────────────────────────────────────────
palette ────────────────────────────────────────────────
idxnamehex
01red#e06c60
02green#8ab87a
03yellow#d4a656
04blue#6ca0c8
05magenta#c586b6
06cyan#6eb5b5
────────────────────────────────────────────────────────
12:04:18 INFO loaded theme bundle ember@1.0.0
12:04:18 WARN fallback font not found, using JetBrains Mono
12:04:19 ERR skipped broken symlink in ~/.config/ghostty/themes
12:04:19 OK ready on tty
ghostty +list-themes | grep Ember
NORMAL~/dev/ember-ghosttyutf-8Ember · 16 colors100%

Static TUI mock — tabs, menus, diffs, logs, and a status bar in real Ember colors.

Why another theme

Most dark themes I tried were either icy blue-gray or punched up for screenshots. I wanted something closer to paper under a lamp: warm neutrals, sage greens, steel blues, and coral reds that don’t vibrate against the background.

The first pass came out of prompting. The months after that were the real work — nudging grays so dim text doesn’t vanish, desaturating yellows so they don’t glow, and keeping selection a quiet warm brown instead of a neon slab.

Light mode got the same treatment in reverse. Pure white background, near-black foreground, deeper accents so nothing washes out on a bright display.

Install

Repo: github.com/vaibhavshn/ember-ghostty

Copy the theme files into Ghostty’s themes directory:

mkdir -p ~/.config/ghostty/themes
cp "themes/Ember Dark" "themes/Ember Light" ~/.config/ghostty/themes/

Then set one theme, or both and follow system appearance:

# Single theme
theme = Ember Dark
# or
theme = Ember Light

# Auto light/dark
theme = light:Ember Light,dark:Ember Dark

Reload or restart Ghostty and you’re set.

Palette notes

Role Dark Light
Background #18181a deep charcoal #ffffff pure white
Foreground #d8d4cf warm off-white #1a1a1c near-black
Cursor #d49a6a muted burnt orange #a86020 rich burnt orange
Selection #3d3530 warm brown tint #d0d0d5 neutral gray
Accent #d4a656 / #e6b86e amber #956318 / #9c6a20 amber

If you live in a terminal all day, small color choices compound. Ember is the set I landed on after living with it — not too contrasty, warm, and easy on the eyes.

Grab it from the repo, try it with OpenCode or Pi, and tweak freely if your eyes want something slightly different.