Methodology

How this archive is built.

Explicit answers to the questions that come up when you start using this dictionary on a real project: where the data comes from, what's editorial, what's verified, and how things like WCAG contrast are computed.

Source data

The 348 historical plates are derived from mattdesl/dictionary-of-colour-combinations, an MIT-licensed digitisation of all six volumes of Sanzo Wada's 1933 Dictionary of Color Combinations (色彩図鑑). Wada was a Japanese painter, costume designer, and color theorist (1883-1967); his original catalogue is reissued in modern reprint by Seigensha Art Publishing, 2010 — the recommended physical reference is on the about page.

The 30 editorial palettes are original compositions inspired by Wada's methodology — same era-tagging, same nameRomaji + nameJa + meaning structure for each color, same use of named pigments from the Japanese shikisai (色彩) tradition. They are not derived from the Wada source.

License + attribution

All site content (palette compositions, editorial descriptions, curation, layout) is released under CC-BY-4.0 with attribution to colorcombinations.org. The underlying Wada plates are public-domain by age; the digitisation layer carries the upstream MIT license. When citing or reusing, please attribute both: this site for the curation, mattdesl for the digitisation, and Sanzo Wada for the original work.

WCAG contrast calculation

Every palette page renders a contrast matrix between each pair of colors in the palette, and every named-color page renders the contrast against pure white (#FFFFFF) and pure black (#000000). The calculation follows the WCAG 2.1 Section 1.4.3 formula:

  1. Convert each hex to sRGB linear-light using the standard piecewise gamma function.
  2. Compute relative luminance: L = 0.2126·R + 0.7152·G + 0.0722·B.
  3. Contrast ratio = (Llighter + 0.05) / (Ldarker + 0.05).
  4. AA pass: ratio ≥ 4.5 (normal text), ≥ 3.0 (large text). AAA pass: ratio ≥ 7.0 (normal), ≥ 4.5 (large).

Source code for the calculation is in the open repo at github.com/acevaultorg/colorcombinations in src/lib/color.ts. The same code path powers the public Contrast Checker tool and the JSON API endpoints at /api/colors/[slug].json.

Hue classification

Each color is assigned to one of nine hue families: red, orange, yellow, brown, pink, green, blue, purple, neutral. The classification is hex-derived (HSL bucketing on hue angle and saturation thresholds), not name-derived — so a color called "Sea Green" with a measurably blue hex (e.g. #00B49B) lands in the blue family rather than the green family. This is sometimes surprising on the /colors/blue/ hue-family page, but it's the consistent rule and it's documented here.

Moods and eras

Each palette is hand-tagged with one to three moods (serene, bold, earthy, refined, austere, warm, cool, playful, solemn) and one era (Heian, Kamakura, Muromachi, Edo, Meiji, Taisho, Showa). Mood tagging is editorial judgment; era tagging follows the period framing in the source dictionary plus our about page's historical research.

AI crawler policy

LLM crawlers (GPTBot, ClaudeBot, PerplexityBot, Googlebot- Extended, Applebot-Extended, CCBot, Amazonbot, Bytespider, Meta-ExternalAgent) are explicitly allow-listed in /robots.txt. The machine-readable site map is at /llms.txt. Every detail page advertises its JSON counterpart via <link rel="alternate" type="application/json"> — bots can traverse the data graph without HTML scraping. Bulk CSV downloads at /data/ are CORS-enabled with Access-Control-Allow-Origin: *.

Updates

Every detail page emits dateModified in JSON-LD on every deploy, so the freshness signal compounds without manual intervention. The RSS feed includes both editorial palette additions and new long-form /learn/ articles. Source-data updates happen quarterly when new historical material surfaces (the recent Sanzo Wada Vol. 2 reissue is on the shop reading list).

Contact + correction policy

Found a factual error in a palette description, an incorrect Japanese name, or a mis-cited source? Email [email protected] — corrections land in the next deploy and the article's dateModified updates.