Skip to content

Add color palette#6

Draft
skewb1k wants to merge 2 commits intomainfrom
palette
Draft

Add color palette#6
skewb1k wants to merge 2 commits intomainfrom
palette

Conversation

@skewb1k
Copy link
Member

@skewb1k skewb1k commented Dec 23, 2025

Goal

Introduce a standardized color palette for the Vague theme.
This simplifies theme porting, enables easier creation of variants, and helps ensure consistency.

  • Define and document color naming conventions.
  • Add palette.json as a single source of truth for tooling and automation.
  • Generate SVG color assets.
  • Add a Markdown table documenting the palette in README.md. Preview
  • Document the ANSI color palette in README.md.
  • Generate additional color formats from HEX (e.g. RGB, HSL).
  • Add MAINTAIN.md with guidelines for maintaining and evolving the palette.

@skewb1k
Copy link
Member Author

skewb1k commented Dec 23, 2025

On color naming

Since the theme originated as a Neovim plugin, the current reference for all other ports is the Lua table in https://github.com/vague-theme/vague.nvim/blob/dba28050887c2810b5ebf9e0143b4e919bd55757/lua/vague/config/internal.lua#L102.

That table names colors based on their semantic usage in Neovim (e.g. warning, visual, keyword). This works well within the Neovim context, but it may not be ideal for a standalone palette, as those names become less meaningful outside of text editing or Neovim-specific use cases.

I think a better long-term convention is to name colors primarily by their appearance rather than their usage. The main challenge is dealing with very similar shades and the limited set of intuitive color names. For example, we currently have three yellows. I don't think introducing numbers or "bright-" / "dark-" prefixes is a great solution, but coming up with more descriptive names (e.g. "gold", or something) might be possible.

This likely needs more thought, but for now this is the best approach I've come up with.

1766515300_screenshot
{
  "background": "#141415",
  "text": "#cdcdcd",
  "surface": "#1c1c24",
  "overlay": "#252530",
  "highlight": "#333738",
  "muted": "#606079",
  "gray": "#878787",
  "yellow": "#f3be7c",
  "yellow1": "#e8b589",
  "yellow2": "#e0a363",
  "peach": "#c48282",
  "red": "#d8647e",
  "cerulean": "#405065",
  "lavender": "#c3c3d5",
  "cyan": "#aeaed1",
  "pink": "#bb9dbd",
  "aqua": "#b4d4cf",
  "aqua1": "#90a0b5",
  "aqua2": "#9bb4bc",
  "teal": "#6e94b2",
  "blue": "#7e98e8",
  "green": "#7fa563"
}

@vague2k I'd really appreciate your thoughts on this, especially if you have ideas or preferences around naming convention.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant