INTERFACE · 01

iTerm2

Phosphor monitors were terminals. The theme starts here - a Display-P3 dark profile, sixteen tuned ANSI slots, and an Oh My Zsh prompt that paints itself from the same palette.

Install Theme

The Terminal

Ioskeley-Mono Font with syntax highlighting on a customizable prompt that shows everything you need at a glance. The terminal below is fully interactive and emulates an environment with the Forest Phosphor profile.

    ✦                   ✦ 
             ✦        
        ▟█▙                      ✦
       ▟███▙         
      ▟█████▙     ✦   ▟█▙.   
✦   ▟███████▙        ▟███▙
    ▟█████████▙      ▟█████▙.   ✦
         ║              ║

  ✦  Forest Phosphor  ·  click to interact  ✦
  type `help` and press Enter for a list of commands
(base) Machine:~/Documents/Projects/ForestPhosphor git:(trunk*):
Live demo - click in, try help, ls -la, cat README.md, git status.
PROMPT

The prompt

An Oh My Zsh prompt assembled in ~/.zshrc — five chunks, each pulled from a single ANSI slot. The whole thing is one PROMPT= line plus a precmd() that refreshes the conda env on every render.

One render of the prompt, every chunk visible.
(base)
CONDA_PROMPT_MODIFIER

active conda env — magenta (concrete shape)

Machine
%F{green}%m%f

hostname — ANSI green slot

~
%F{blue}%~%f

cwd — ANSI blue slot (property)

(trunk*)
%F{red}$(git_prompt_info)%f

git branch + dirty marker — ANSI red slot (coral)

:
literal

separators inherit foreground green

~/.zshrc bash
# Load git plugin (required for git_prompt_info)
plugins=(git)

# Git prompt customization (must come BEFORE source)
ZSH_THEME_GIT_PROMPT_PREFIX=" ("
ZSH_THEME_GIT_PROMPT_SUFFIX=")"
ZSH_THEME_GIT_PROMPT_CLEAN=""
ZSH_THEME_GIT_PROMPT_DIRTY="*"

# Prompt format

autoload -Uz colors && colors
precmd() {
  CONDA_PROMPT_MODIFIER="%F{#C07AC8}($CONDA_DEFAULT_ENV)%f "
}
PROMPT='${CONDA_PROMPT_MODIFIER}%F{green}%m%f:%F{blue}%~%f %F{red}$(git_prompt_info)%f: '

# Load Oh My Zsh after everything is configured
source $ZSH/oh-my-zsh.sh
PROFILE

Profile settings

The profile ships with separate Light and Dark color sets and defaults to Dark. The non-color settings below matter most - they're what make box drawing, ligature glyphs, and italic highlighting all line up.

SettingValueNote
FontIoskeley-Monoproject-shipped face; falls back to JetBrains Mono
Non-ASCII fontMonaco 15covers symbols Ioskeley does not ship
Italic / Boldonrequired for the prompt + zsh-syntax-highlighting styles
Brighten Boldon (Dark)bold pushes to bright white instead of saturating ANSI
Powerline glyphsonenables / branch separators if you swap in a powerline theme
Cursorvertical bar, blinkingCursor Type 1 + Blinking Cursor true
SpacingV 1.01 · H 0.99small breathing room - keeps box-drawing flush
Thin strokes4 (always)crisp glyph rendering on retina + non-retina
Terminal typexterm-256colorrequired for the bright slots to resolve
Scrollbackunlimitedtmux history-limit is the actual ceiling in practice
ANSI · 16

Color mapping

Sixteen slots, two tiers. The standard set lives in 0–7; their brighter variants in 8–15. Where you see Display P3 in the profile JSON, that's your Mac pushing the accent colors into wider and more saturated tones than a standard display can show - the terminal will run slightly hotter than what the swatches on this page can show

  • 0 black P3
    #0F180C

    shell background — matches editor.background

  • 1 red P3
    #EA9575

    coral — attention, errors, throw

  • 2 green P3
    #73E165

    strings, prompt hostname

  • 3 yellow P3
    #E8A030

    amber — structural keywords: function, class, return, import

  • 4 blue P3
    #77B0FF

    property blue — fields, options, paths in legacy ls

  • 5 magenta P3
    #C07AC8

    concrete shapes — class, struct, enum, conda env

  • 6 cyan P3
    #7AF8FF

    phosphor — variables, signature accent

  • 7 white P3
    #E8F0E8

    literals — numbers, booleans, null, default near-white

  • 8 bright black P3
    #1E3119

    border-subtle — separators, hairlines, dim glyphs

  • 9 bright red P3
    #DD7975

    desaturated coral — deprecated, severe

  • 10 bright green P3
    #5AE66A

    success-green — diff additions, test pass

  • 11 bright yellow P3
    #D1CF32

    function-yellow — callable: functions, methods, aliases

  • 12 bright blue P3
    #328EEE

    link-blue — external link affordance

  • 13 bright magenta P3
    #FFB4E2

    orchid pink — abstract shapes: interface, type, generic

  • 14 bright cyan P3
    #7AF8FF

    phosphor (mirrors slot 6) — accents, highlighting

  • 15 bright white P3
    #E8F0E8

    near-white emphasis (mirrors slot 7)

GENERAL COLORS

Beyond the 16 slots

Background, foreground, cursor, selection, and link colors live outside the ANSI table - these are the keys you set under Profiles → Colors → Basic Colors.

  • Background
    #0F180C

    deep phosphor field — matches editor.background

  • Foreground
    #A2EBA1

    body ink — flow keywords, operators, punctuation

  • Cursor
    #FFFFFF

    pure white, blinking

  • Cursor Text
    #0F180C

    inverts to background under caret

  • Selection
    #4A7ACC

    cool blue, 40% alpha — mirrors editor.selectionBackground

  • Selected Text
    #E8F0E8

    near-white on the selection wash

  • Link
    #D1CF32

    function-yellow as an actionable — same as slot 11

  • Bold
    #FFFFFF

    brightens to white with "Brighten Bold" on

  • Match Background
    #D4A24A

    find-match glow — gold

  • Badge
    #EA9575

    coral, 50% alpha

OH MY ZSH · SYNTAX

Oh My Zsh & line highlighting

The terminal palette only paints what the shell tells it to. Pair it with Oh My Zsh for the git plugin (which feeds git_prompt_info) and zsh-syntax-highlighting for the per-token coloring on the command line itself. The overrides below are pulled straight from the reference ~/.zshrc.

  • command
    git #D1CF32

    resolved binaries — yellow, the callable role

  • builtin
    cd #E8A030

    shell builtins — amber, structural (shell-internal control)

  • alias
    ll #D1CF32

    aliased commands — yellow, callable like any other command

  • function
    precmd #D1CF32

    shell functions — yellow, callable

  • single/double-quoted
    "phosphor" #73E165

    string literals — string green

  • hyphen-options
    --color #77B0FF

    flags — blue, attributes on a command (not callable)

  • path
    ~/Projects #7AF8FF

    real paths — cyan, the data / variable role

  • unknown-token
    asdf #EA9575

    unresolved — coral attention signal

~/.zshrc bash
# zsh-syntax-highlighting - Forest Phosphor colors
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

# Commands, builtins, aliases, functions — all callable, all yellow.
# Builtins keep amber to mark them as structural (shell-internal control).
ZSH_HIGHLIGHT_STYLES[command]='fg=#D1CF32,nounderline'
ZSH_HIGHLIGHT_STYLES[builtin]='fg=#E8A030,nounderline'
ZSH_HIGHLIGHT_STYLES[alias]='fg=#D1CF32,nounderline'
ZSH_HIGHLIGHT_STYLES[function]='fg=#D1CF32,nounderline'

# Strings - string green
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#73e165'
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#73e165'

# Flags / options — blue (attributes on a command, not callable)
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#77B0FF'
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#77B0FF'

# Paths — cyan (data / variable role)
ZSH_HIGHLIGHT_STYLES[path]='fg=#7AF8FF'

# Unknown / error commands — coral attention signal
ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#EA9575,nounderline'
SETUP

Install

Two halves. The profile JSON paints iTerm2's chrome and the 16 ANSI slots. The shell config paints the prompt and the active line. You can run either half on its own; together they're what's pictured at the top of the page.

A · The iTerm2 profile

In your terminal, navigate to the directory where you want to save the iTerm Profile data, then;
install-profile.sh bash
# Download the profile
curl -O https://github.com/Steven-Theuerl/forest-phosphor-iterm2/blob/trunk/iTermForestPhosphor.json
Or click the button below for direct and convenient placement in your downloads folder;

B · Oh My Zsh + syntax highlighting

install-shell.sh bash
# 1. Install Oh My Zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# 2. Install zsh-syntax-highlighting (Homebrew)
brew install zsh-syntax-highlighting

# 3. Drop the prompt + highlight blocks from this page into ~/.zshrc
#    (above the conda init block if you use Miniconda)

# 4. Reload
exec zsh
Download zshrcReference.sh
SHELL conda + nvm + pnpm
get-zshrc.sh bash
# Download the reference .zshrc to your current directory
curl -O https://github.com/Steven-Theuerl/forest-phosphor-iterm2/blob/trunk/zshrcReference.sh
TIPS

Tips & Troubleshooting