
Catppuccin for Zed
- Open Zed.
cmd+shift+p
and select zed: extensions- Select Catppuccin Themes and Install
- Select your Catppuccin theme in the dropdown shown after hitting
cmd+k
,cmd+t

- Download accent
.json
from GH Releases mkdir -p ~/.config/zed/themes/
- Move the accent
.json
file to~/.config/zed/themes/
- Restart Zed
- Select the chosen theme in the dropdown shown after hitting
cmd+k
,cmd+t
-
Install Rust
-
Install
whiskers
# brew install catppuccin/tap/whiskers cargo install [email protected]
-
Test and check changes against current
mauve
accent theme# returns nothing if OK whiskers zed.tera -o json --overrides '{"accent": "mauve"}' --check themes/catppuccin-mauve.json
-
Build the
.json
theme filewhiskers zed.tera -o json --overrides '{"accent": ["mauve"]}' # whiskers zed.tera -o json --overrides '{"accent": ["mauve","lavender"]}' ...
-
(Optional) π¨ Generate all accents per Flavor
whiskers zed.tera -o json
-
Refresh Zed to load changes after ensuring local extension install
From Zed Extensions docs:
- Install project as "Zed Dev Extension"
cmd+shift+p > zed: install dev extension > (select current directory)
- Refresh theme extension using:
cmd+shift+p
>zed: reload extensions
- (Optional)
workspace: reload
may be needed if changes are not reflected immediately
Zed organizes all extensions using git submodules
in the zed/extensions repo.
-
Pull the currently published
extensions/catppuccin/
submodulegit submodule update --init --force extensions/catppuccin
-
Bump catppuccin submodule
cd extensions/catppuccin/ && git pull origin main
-
Modify the extensions/
extensions.toml
version to match value in catppuccin/zed/extension.toml -
Submit a PR to merge back to
zed/extensions
Copyright Β© 2021-present Catppuccin Org