Warp documentation
  • Getting Started
    • Quickstart Guide
    • What is Warp?
    • Supported shells
    • Migrate to Warp
    • Keyboard Shortcuts
    • Changelog
  • Agents
    • Warp AI
      • Agent Mode
  • Active AI
  • Generate
  • Voice
  • Terminal
    • Appearance
      • Themes
      • Custom Themes
      • Prompt
      • Input Position
      • Text, Fonts, & Cursor
      • Size, Opacity, & Blurring
      • Pane Dimming & Focus
      • Blocks Behavior
      • Tabs Behavior
      • App Icons
    • Blocks
      • Block Basics
      • Block Actions
      • Block Sharing
      • Block Find
      • Block Filtering
      • Background Blocks
      • Sticky Command Header
    • Modern Text Editing
      • Alias Expansion
      • Command Inspector
      • Syntax & Error Highlighting
      • Vim Keybindings
    • Command Entry
      • Command Corrections
      • Command Search
      • Command History
      • Synchronized Inputs
      • YAML Workflows
    • Command Completions
      • Completions
      • Autosuggestions
    • Command Palette
    • Session Management
      • Launch Configurations
      • Session Navigation
      • Session Restoration
    • Window Management
      • Global Hotkey
      • Tabs
      • Split Panes
    • Warpify
      • Subshells
      • SSH
    • More Features
      • Accessibility
      • Files, Links, & Scripts
      • Markdown Viewer
      • Working Directory
      • Smart-Select
      • Full-screen Apps
      • Notifications & Audible Bell
      • Settings Sync (Beta)
      • Quit Warning
      • URI Scheme
      • Linux
    • Comparisons
      • Performance
      • Terminal features
  • Integrations
  • Knowledge & Collaboration
    • Warp Drive
      • Notebooks
      • Workflows
      • Prompts
      • Environment Variables
      • Warp Drive on the Web
    • Model Context Protocol
    • Rules
    • Teams
    • Session Sharing
  • Privacy
    • Privacy
    • Secret Redaction
    • Network Log
  • Community
    • Refer a Friend & Earn Rewards
    • Warp Preview & Alpha Program
  • Support & Billing
    • Sending Feedback & Logs
    • Plans & Pricing
    • Updating Warp
    • Using Warp Offline
    • Logging out & Uninstalling
    • Known Issues
    • Troubleshooting Login Issues
    • Open Source Licenses
Powered by GitBook
On this page
  • Warp's Custom Theme Repository
  • How do I use a custom theme in Warp?
  • Create your custom theme, manually
  • Create your custom theme, automatically
  • Create your custom theme, with a tool
  • Background Images and Gradients
  • Contributing
  • Community
  • Open source dependencies

Was this helpful?

  1. Terminal
  2. Appearance

Custom Themes

Warp supports Custom Themes which can be created manually or downloaded from our repo.

PreviousThemesNextPrompt

Last updated 2 months ago

Was this helpful?

Examples and a collection of themes can be found in the .

Warp's Custom Theme Repository

We have a

Each theme has a preview generated in the README.

The main difference between "standard" and "base16" themes is that "standard" themes follow the typical color setup, while "base16" themes follow the framework suggested by .

There are 2 ways to install a theme from this repo.

  1. Download a single file and follow the steps in the section below.

  2. Clone the entire repo into the appropriate location based on your OS below:

mkdir -p $HOME/.warp
cd $HOME/.warp/
git clone https://github.com/warpdotdev/themes.git
New-Item -Path "$env:APPDATA\warp\Warp\data\" -ItemType Directory
Set-Location -Path $env:APPDATA\warp\Warp\data\
git clone https://github.com/warpdotdev/themes.git
mkdir -p ${XDG_DATA_HOME:-$HOME/.local/share}/warp-terminal
cd ${XDG_DATA_HOME:-$HOME/.local/share}/warp-terminal/
git clone https://github.com/warpdotdev/themes.git

Here is a step-by-step YouTube video that goes through these 2 steps for an example theme. Note the location for the files is based on macOS.

How do I use a custom theme in Warp?

  1. To start, create the following directory:

mkdir -p $HOME/.warp/themes/
New-Item -Path "$env:APPDATA\warp\Warp\data\themes\" -ItemType Directory
mkdir -p ${XDG_DATA_HOME:-$HOME/.local/share}/warp-terminal/themes/

It may take several minutes for Warp to initially discover the new themes directory. You can either wait or restart Warp. After that step, all future changes to the directory will be reflected within seconds.

  1. Add your new custom theme yaml file to this directory:

cp ~/Downloads/my_awesome_theme.yaml {{path_to_your_themes_directory_from_step1}}

Your new theme should now be visible on the list of available themes.

Create your custom theme, manually

Warp supports creating custom themes using .yaml files.

The format itself might expand, but we'll do our best to avoid breaking changes and maintain forward compatibility. We also plan on supporting sharing/creating custom themes directly within Warp.

A custom theme in Warp has the following .yaml structure:

name: Custom Theme # Name for the theme
accent: '#268bd2' # Accent color for UI elements
cursor: '#95D886' # Input cursor color (optional; defaults to accent color if omitted)
background: '#002b36' # Terminal background color
foreground: '#839496' # The foreground color
details: darker # Whether the theme is lighter or darker
terminal_colors: # Ansi escape colors
  bright:
    black: '#002b36'
    blue: '#839496'
    cyan: '#93a1a1'
    green: '#586e75'
    magenta: '#6c71c4'
    red: '#cb4b16'
    white: '#fdf6e3'
    yellow: '#657b83'
  normal:
    black: '#073642'
    blue: '#268bd2'
    cyan: '#2aa198'
    green: '#859900'
    magenta: '#d33682'
    red: '#dc322f'
    white: '#eee8d5'
    yellow: '#b58900'

Each color is represented in hex and must start with #.

  • name: Name for the theme, will show up in the Theme picker.

  • accent: Color used for highlights in Warp's UI

  • cursor: Color for the input cursor (optional; defaults to accent color if omitted)

  • background: Color of background

  • foreground: Color of foreground

  • details: Color used for detailing options

    • darker: Color used for dark theme

    • lighter: Color used for light-mode theme

  • terminal_colors: Collection of normal & bright colors (16 total) known for other terminal themes (ANSI colors)

Create your custom theme, automatically

Create your custom theme, with a tool

Background Images and Gradients

To add a background image you can use this attribute: background_image: with the name of the image you want to use as the background.

Note: Warp currently only supports images with the .jpg file format:

  • .jpeg

  • .jpg

  • .JPEG

A .yaml config looks like this:

name: Custom Theme
accent: '#268bd2'
cursor: '#95D886'
background: '#002b36'
details: darker
foreground: '#839496'

############################################################### SEE BELOW
background_image:
  # the path is relative to ~/.warp/themes/
  # the full path to the picture is: ~/.warp/themes/warp.jpg
  path: warp.jpg
  # the opacity value is required and can range from 0-100
  opacity: 60
############################################################### SEE ABOVE

terminal_colors:
  bright:
    black: '#002b36'
    blue: '#839496'
    cyan: '#93a1a1'
    green: '#586e75'
    magenta: '#6c71c4'
    red: '#cb4b16'
    white: '#fdf6e3'
    yellow: '#657b83'
  normal:
    black: '#073642'
    blue: '#268bd2'
    cyan: '#2aa198'
    green: '#859900'
    magenta: '#d33682'
    red: '#dc322f'
    white: '#eee8d5'
    yellow: '#b58900'

To set up a gradient, create a sublevel under accent with two key-value pairs:

  • "left" and "right" or

  • "top" and "bottom".

accent:
  top: '#abcdef'
  bottom: '#fedcba'
accent:
   left: '#abcdef'
   right: '#fedcba'

Warp also supports setting a gradient for the background.

# accent has a gradient
accent:
  left: '#474747'
  right: '#ffffff'
# background has a gradient
background:
  top: '#474747'
  bottom: '#ffffff'

Contributing

Contributions to this repo are greatly appreciated!

  1. Fork the project

  2. Create your branch with git checkout -b theme/AwesomeTheme

  3. Regenerate thumbnails

  4. Commit and open a pull request

Run this script to generate the thumbnails.

# Assuming you're adding the theme to the `standard` directory:
python3 ./scripts/gen_theme_previews.py standard

Note: We cannot accept pull requests that include custom background images because:

  • Licensing restrictions

  • Trying to keep the binary size of the repo as small as possible (only the yaml files)

If your theme has an intended custom background image, include a comment in the yaml with a link to where people should download it.

Community

Open source dependencies

We'd like to call out a few of the open-source themes and repositories that helped bootstrap the set of themes for Warp:

Automatically create new themes based on a background image. Click the + button in the theme picker Settings > Appearance > Current Theme or search Open Theme Picker within the .

Use to create a custom theme and generate the appropriate RGB values for your custom theme. Once the YAML file is created, you can edit the file to add the background images or gradients.

All other Warp-related things can be discussed, please .

Command Palette
Terminal-Themes
contact us
iTerm colors pencil
Alacritty-theme
base16-Alacritty
base16
Solarized
Dracula
Gruvbox
Warp themes repository
repository of themes hosted on GitHub.
@chriskempson
Adding a Custom Theme to Warp