catppuccin / catppuccin/vscode

Support custom accent colour from the user & the full palette

Open
#411 8 comments 2 reactions 0 assignees View on GitHub
enhancement good first issue
Dominant language
TypeScript
Stars
2.3k
Forks
85
PR merge metrics
No merged PRs in 30d

Description

The readme [says](https://github.com/catppuccin/vscode/blob/08de0d9d44de6693d1379e40a48be797a4fb4715/README.md#custom-accent-color):

> You can choose any color as your "accent" color.

I think what the author meant to say was that you can choose any color *from the Catppuccin palette* as your accent color. Instead, it says that you can simply choose 'any color'. This is definitely not the case; it's clear from trying it that this doesn't work, and it's clear [from the code](https://github.com/catppuccin/vscode/blob/08de0d9d44de6693d1379e40a48be797a4fb4715/packages/catppuccin-vsc/src/theme/uiColors.ts#L11) that this doesn't work.

But I think I would like it to work. I want to use an accent color that isn't one of the options from the palette, and I would be happy to override the accent color in the same way that I'm overriding named colors such as `base` and `mantle`. From the code, it's clear that `accent` is not a named color, but a variable that holds a named color. This strikes me less as an intentional design choice and more as an inadvertent limitation of the current implementation. Given that the theme explicitly allows colors to be overridden, it seems odd and contradictory that the scope for customizing the accent color is so limited. At the very least, I think the documentation should be clarified.

See also #410

Contributor guide

Open the contributing guide

Research direction

Start with the custom accent-color section in README.md and the implementation at packages/catppuccin-vsc/src/theme/uiColors.ts, especially the referenced line. Compare the existing named-color override behavior with the requested accent override and define how the full palette should be exposed. Done means the supported customization works as described and the README no longer promises unsupported behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
design, documentation
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.