Editor

Terminal theme editor

Edit a palette, preview it in the Herdr app, check contrast, and export six configuration formats. Runs entirely in your browser.

Palette workspace

Start from any theme, tune the colors, then export or submit.

Theme metadata

Base colors

Background
Foreground
Cursor
Selection

ANSI palette

black
red
green
yellow
blue
magenta
cyan
white
bright black
bright red
bright green
bright yellow
bright blue
bright magenta
bright cyan
bright white

Checks

Body contrast: 11.34:1

2 ANSI colors are below 3:1 against the background: black, brightBlack

Preview

Herdr main × tokens preview Files Changes + Visual Spaces terminal-themes Agents claude codeworking codexdone testsidle api codexblocked reviewerworking Machines local 2 vps 1 + Add machine Settings claude code ~ /dev/terminal-themes❯git status On branch main Changes not staged for commit: modified: themes/mocha.json new file: previews/herdr-app.svg no changes added to commit ❯ pnpm build ✓ built 340 pages in 4.2s ✓ 112 previews ✓ 224 OG images codex theme.json + "background": "#1e1e2e", + "foreground": "#cdd6f4", - "surface": "#272738", + "accent": "#89b4fa" contrast 11.34:1 herdr-app 22 ui colors This computer main 5 agents MCP connected

Export

Using the global Terminal bar above: Herdr App

{
  "background": "#1e1e2e",
  "foreground": "#cdd6f4",
  "selection": "#585b70",
  "cursor": "#cdd6f4",
  "ansi": [
    "#45475a",
    "#f38ba8",
    "#a6e3a1",
    "#f9e2af",
    "#89b4fa",
    "#f5c2e7",
    "#94e2d5",
    "#a6adc8",
    "#585b70",
    "#f37799",
    "#89d88b",
    "#ebd391",
    "#74a8fc",
    "#f2aede",
    "#6bd7ca",
    "#bac2de"
  ],
  "colors": {
    "canvas": "#151524",
    "chrome": "#222333",
    "surface": "#272738",
    "popover": "#2b2c3d",
    "raised": "#2e2f41",
    "hover": "#333446",
    "selected": "#393b4d",
    "border": "#36374a",
    "input": "#3d3e51",
    "foreground": "#cdd6f4",
    "muted": "#9499b3",
    "dim": "#787c94",
    "accent": "#89b4fa",
    "accent_foreground": "#000000",
    "solid": "#719bdf",
    "solid_foreground": "#000000",
    "selection": "#585b70",
    "working": "#f9e2af",
    "blocked": "#f38ba8",
    "done": "#a6e3a1",
    "idle": "#9499b3",
    "unknown": "#787c94"
  }
}
Herdr App

What the editor does

The editor turns one 20-color palette into six native terminal configurations. Adjust the 16 ANSI slots plus background, foreground, cursor, and selection; the preview and contrast checks update immediately.

Exports and install paths

Every export uses the same palette, so colors stay consistent when you switch terminals. The table lists the usual install location for each terminal; the full steps live on the terminal page.

FamilyInstall location
Herdr App~/.config/herdr-app/themes/<name>.json
Ghostty~/.config/ghostty/themes/<name>
Alacritty~/.config/alacritty/alacritty.toml
Kitty~/.config/kitty/<name>.conf
iTerm2*.itermcolors → Profiles → Colors
Windows Terminalsettings.json → schemes[]

Privacy and sharing

The editor needs no account and does not upload your palette. Color math, previews, and exports run in the browser; a share link only stores the palette state in the URL hash.

Submit to the catalog

Fill in family, slug, and name, then press Submit. GitHub's new-file page opens with the full JSON prefilled; review it, open a pull request, and CI validates the schema, duplicate colors, contrast, and the full build. See the contribution guide for the workflow.

Contribute · Read guide

Frequently asked questions

Is the terminal theme editor free?

Yes. The editor runs locally in your browser, requires no account, and does not upload your palette to a server.

Which formats can I export?

Herdr App JSON, Ghostty, Alacritty, Kitty, iTerm2, and Windows Terminal. Every format uses the same 16-color ANSI palette.

Is my palette uploaded anywhere?

No. Color math, previews, and exports happen in the browser. A share link only puts the palette state in the URL hash.

How do I submit a theme to the catalog?

Fill in family, slug, and name, then press Submit. The editor puts the full theme JSON into the new-file value parameter on GitHub; review it, open a pull request, and CI validates the schema, duplicate colors, and build.