Page MenuHomePhabricator

Develop an expanded color palette for Codex
Closed, ResolvedPublic5 Estimated Story Points

Assigned To
Authored By
DTorsani-WMF
Mar 20 2024, 1:49 AM
Referenced Files
F57496606: full palette.jpg
Sep 10 2024, 5:23 PM
F57496142: full palette-1.jpg
Sep 10 2024, 5:23 PM
F55204162: full palette.png
Jun 11 2024, 1:14 AM
F55204141: codex colors post dark mode.png
Jun 11 2024, 1:14 AM
F55204133: codex colors pre dark mode.png
Jun 11 2024, 1:14 AM
F55204123: all token colors across web and apps.png
Jun 11 2024, 1:14 AM
F55189427: full palette.png
Jun 10 2024, 8:03 PM
F55186720: codex colors post dark mode.png
Jun 10 2024, 8:03 PM
Tokens
"Fox" token, awarded by Lofhi.

Description

Overview

The broad color palette expansion has been explored using generative tools with manual fine-tuning, aligning to the goals and considering the opportunities listed in T371516.

This expanded palette allows us to make general statement such as:

  • The 700 value of every color (and 600 value of gray), which represent text and link colors in the Codex light mode and other potential themes, has at least 4.5:1 contrast ratio on all 50 values of all colors (and 100 value of gray). These same 700 values have a contrast ratio of at least 2.97:1 with the 900 value of gray, which would be the base text color in light mode or a potential sepia mode.
  • The 400 value of every color (and 300 value of gray), which represent text and link colors in the Codex dark mode and other potential themes, has at least 4.5:1 contrast ratio on all 1000 values of all colors (and 800 value of gray).
  • Other similar statements can be made for both light and dark modes for graphical elements and a 3:1 contrast ratio with the 500 value of all colors.

New palette

full palette-1.jpg (2×2 px, 203 KB)

Palette comparisons

Realigned values

How to read this table

The numbers on the top row are the new values.
The numbers next to each color are the previous palettes equivalent to the newly realigned palette.
Cells with a dash (-) are new values which did not previously exist.
For example, what was previously known as yellow500 is now known as yellow200.

501002003004005006007008009001000
gray100200250300400500600650700750800
red100--300400500600650700-800
orange-----------
yellow100-500600-650700---800
lime-----------
green100--400500-600-700-800
blue100-250300-400500600650700800
purple---250300400-500600700-
pink-----------
maroon---250300400-500600700-

The visual example below follows the same logic for the numerical values. Each swatch, or cell, has two halves. The left half is the previous color and the right half is the new color of the equivalent value.

full palette.jpg (2×2 px, 495 KB)

Previous vs new hex codes

previous hexnew hexprevious valuenew value
f8f9faf8f9fagray100gray50
eaecf0eaecf0gray200gray100
dadde3dadde3gray250gray200
c8ccd1c8ccd1gray300gray300
a2a9b1a2a9b1gray400gray400
72777d72777dgray500gray500
54595d54595dgray600gray600
404244404244gray650gray700
27292d27292dgray700gray800
202122202122gray750gray900
101418101418gray800gray1000
fee7e6ffe9e5red100red50
f8a397fea898red300red300
ef8174fd7865red400red400
ff4242f54739red500red500
d73333refer to T370446red600red600
bd2a2abf3c2cred650red700
b324249f3526red700red800
4212113c1a13red800red1000
fef6e7 {also ffe7e6}fdf2d5yellow100yellow50
fc3fecc44`yellow500yellow200
edab00eeb533yellow600yellow300
ad822bab7f2ayellow650yellow500
a66200987027yellow700yellow600
301d002d2212yellow800yellow1000
d5fdf4dff2ebgreen100green50
74c9ac80cdb3green400green300
00af892cb491green500green400
14866d14876bgreen600green600
096450196551green700green800
00261e132821green800green1000
eaf3fff1f4fdblue100blue50
c2d1f0cbd6f6blue250blue200
afb6e9b0c1f0blue300blue300
6d8af26485d1blue400blue500
447ff54b77d6blue500blue600
36c36cblue600blue700
3057ac3056a9blue650blue800
2a4b8d233566blue700blue900
1c29401b223dblue800blue1000
c3b2d8c5b9ddpurple250purple300
ad97caa799cdpurple300purple400
977dbd8d7ebdpurple400purple500
7c5eab6a60b0purple500purple700
6b4ba1534fa3purple600purple800
5a4086353262purple700purple900
d8afaddcb5b3maroon250maroon300
c99391c99391maroon300maroon400
b97876b57775maroon400maroon500
a558589f5555maroon500maroon700
874949854848maroon600maroon800
733f3f512e2emaroon700maroon900
Extended replacements
099D7C2cb491-green400

Acceptance Criteria

  • Realign values to one another across hues
  • Fill in the gaps to expand color palette
  • Add/adjust color option tokens
  • Revise application and component tokens to match

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
CCiufo-WMF changed the task status from Open to In Progress.Jul 4 2024, 5:17 PM
CCiufo-WMF triaged this task as High priority.

Change #1034572 abandoned by Dtorsani:

[design/codex@main] tokens: Expand color palette to fill in gaps and realign values

Reason:

Starting fresh since this is out of date and this was a proof of concept.

https://gerrit.wikimedia.org/r/1034572

Change #1053977 had a related patch set uploaded (by Dtorsani; author: Dtorsani):

[design/codex@main] tokens: Expand color palette

https://gerrit.wikimedia.org/r/1053977

A previous small amendment similar was T343239: Amend Wikimedia Design System`#d33` to `#d73333` for an example of full impact on Wikimedia deployed software.

CCiufo-WMF renamed this task from Expand color palette to Develop an expanded color palette for Codex.Jul 31 2024, 3:44 PM
CCiufo-WMF updated the task description. (Show Details)

The overall effort to expand the palette is now captured in T371516. I've updated this task to just be about developing the new palette, but we still need to do more testing and rework parts of the doc site before we can deploy it.

Change #1053977 merged by jenkins-bot:

[design/codex@main] tokens: Expand color palette

https://gerrit.wikimedia.org/r/1053977

Change #1073562 had a related patch set uploaded (by LWatson; author: LWatson):

[mediawiki/core@master] Update Codex from v1.12.0 to v1.13.0

https://gerrit.wikimedia.org/r/1073562