Skip to content

Add Radix Colors palette#22

Open
LeaVerou wants to merge 1 commit into
mainfrom
claude/add-radix-palette
Open

Add Radix Colors palette#22
LeaVerou wants to merge 1 commit into
mainfrom
claude/add-radix-palette

Conversation

@LeaVerou

Copy link
Copy Markdown
Member

Adds Radix Colors as a new palette.

Source

Imported the light-mode solid sRGB scales from radix-ui/colors/src/light.ts. Alpha (A) and Display P3 (P3 / P3A) variants are excluded, matching the single-coherent-set convention used elsewhere in this repo (e.g. primer-light).

Radix ships 30 light scales of 12 steps each: 6 neutrals (gray, mauve, slate, sage, olive, sand) and 24 chromatic hues (tomato, red, ruby, crimson, pink, plum, purple, violet, iris, indigo, blue, cyan, teal, jade, green, grass, brown, bronze, gold, sky, mint, lime, yellow, amber, orange).

Why it's hand-tuned

Radix's docs explicitly describe a hand-designed system where each of the 12 steps has a fixed semantic role (app background, subtle background, UI element backgrounds, borders, solid colors, hover/active states, low/high-contrast text). Step 9 in particular is the "pure" brand color and is not constrained to fit a lightness grid — it is chosen per hue for its intrinsic appearance (e.g. yellow9 #ffe629 is intentionally much lighter than violet9 #6e56cf).

OKLCH sanity check across 8 representative hues (gray, red, blue, green, amber, violet, orange, pink) confirms this — L stddev per step:

Step    mean L    stddev L
1       0.993     0.0010
2       0.982     0.0015
3       0.959     0.0047
4       0.931     0.0078
5       0.901     0.0091
6       0.866     0.0115
7       0.814     0.0160
8       0.746     0.0213
9       0.658     0.0838   <- L ranges from violet 0.54 to amber 0.85
10      0.630     0.0857   <- L ranges from violet 0.51 to amber 0.83
11      0.548     0.0269
12      0.324     0.0335

At step 9 the lightness spread is ~0.31 between the lightest and darkest hue — nothing like the σ≈0.01 grid-lock that flagged Pico as algorithmic. Even the "in-grid" steps 6-8 have σ that grows with darkness (0.012-0.021), consistent with per-hue tuning rather than a single L curve applied across hues.

Changes

  • data/raw/radix-light.js — upstream light-mode solid sRGB scales
  • data/colors/radix.json — normalized to {hue: {level: hex}}
  • data/palette_metadata.json — entry added as the 2nd item (after opencolor)
  • data/palettes.json + data/hues.json — regenerated via npm run build:data

Generated by Claude Code

@netlify

netlify Bot commented May 19, 2026

Copy link
Copy Markdown

Deploy Preview for colorjs-palettes ready!

Name Link
🔨 Latest commit 525b506
🔍 Latest deploy log https://app.netlify.com/projects/colorjs-palettes/deploys/6a0cbb9d01e262000831610d
😎 Deploy Preview https://deploy-preview-22--colorjs-palettes.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

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.

2 participants