Overview
Ghostty Config automatically fetches available themes from the mbadolato/iTerm2-Color-Schemes repository on GitHub, which contains over 250 color schemes for terminal emulators.How It Works
The theme browser is implemented using the GitHub API:Using the Theme Selector
- Navigate to the Colors panel in the settings editor
- Find the Color theme dropdown in the “General” section
- Select any theme from the dropdown
- The theme is automatically fetched and applied
- Preview updates in real-time
Theme Component
The theme selector (components/settings/Theme.svelte:1) extends the standard dropdown with automatic color scheme loading:Theme Format
Ghostty theme files use a simple key-value format:Color Scheme Structure
Themes define the following colors:Base Colors
background- Terminal backgroundforeground- Default text color
Palette
- 16 indexed colors (0-15)
- First 8 are standard ANSI colors
- Last 8 are bright variants
Cursor
cursor-color- Cursor fill colorcursor-text- Text under cursor
Selection
selection-background- Selected text backgroundselection-foreground- Selected text color
Popular Themes
Some of the most popular themes available:- One Dark - Atom’s iconic dark theme
- Dracula - Popular purple-tinted dark theme
- Solarized Dark/Light - Precision colors for reduced eye strain
- Gruvbox - Retro groove color scheme
- Nord - Arctic, north-bluish color palette
- Tokyo Night - Clean dark theme inspired by Tokyo’s night
- Catppuccin - Soothing pastel theme
- Monokai - Sublime Text’s default theme
Custom Theme Override
Important: Any colors you manually set after selecting a theme will override the theme’s colors.
- Select “One Dark” theme
- Change
cursor-colorto#ff0000 - Result: One Dark theme with a red cursor
Theme Loading
Themes are loaded asynchronously when the settings module initializes:- Fetches the theme list once on page load
- Sorts themes alphabetically with natural number sorting
- Populates the dropdown dynamically
- Fetches individual theme contents only when selected
Creating Custom Themes
To create your own theme:- Use the color picker controls in the Colors panel
- Set base colors (background, foreground)
- Customize the 16-color palette
- Set cursor and selection colors
- Copy the generated config
Example Custom Theme
Palette Generation
Ghostty supports automatic palette generation:- palette-generate - Automatically generates colors 16-231 based on the first 16
- palette-harmonious - Inverts generated colors for better harmony
Related Features
Settings Editor
Full visual configuration interface
Live Previews
See color changes in real-time
External Resources
- iTerm2-Color-Schemes Repository
- Ghostty Color Configuration Docs
- Terminal.sexy - Online theme creator