# Dr Non’s Dao × Palette / a reading exhibition

Dr Non's interpretation of the Dao De Jing, visually organized using his
[Palette system](https://colors.nonarkara.org/). This is not an official MoMA
project, a reproduction of Wada's book, or a historical Daoist colour taxonomy.

## A reader in a hurry

30 October correction: the owner rejected the interlocked cover. A complete,
unobscured scene now accompanies one dominant invitation; shared edges rather
than overlapping text bind the opening. Phone art uses full reading width;
laptop art has its own seven-column field beside five-column text. Author credit
is subordinate, not another display headline. Filled primary actions, underlined
navigation/tools, and bold plus/cross disclosures form the repeated interaction
grammar. No new palette, typeface, content removal or chapter rhythm change.

Begin, open the five-minute guide, or find a chapter. Inside each room:
chapter title → one-sentence idea → interpretation → original Chinese and
translation → reflection. Read, Original, Study, All chapters, and Next are
explicit controls. Deeper material belongs to Language lab, Gallery, and Field
notes. Those are doors, not deletions. The complete transit map is preserved.

Chapter 40 is intentionally different: four lines, quiet space, no compulsory
explanation. The rest of the book should not imitate that exception.

## Colour as a relationship, not decoration

`chapter_palettes.js` is the explicit 81-chapter manifest. Every chapter has
a different two-colour source plate. Three- and four-colour relationships are
selected by the greatest overlap with that pair (the earliest source plate
breaks ties). They are companion relationships, not 81 unique triples/quartets.
No runtime model, network lookup, randomness, or hue rotation is involved.

The selections are editorial: cool blue for water (8 / 119, 78 / 49); neutral
weight for civic restraint (3 / 69); warm/cool tension for overstimulation
(12 / 1); carmine/black for interruption (18 / 117); deep blue for reversal
(40 / 106). Mood labels describe Dr
Non's intended atmosphere. Wada did not assign these colours to Laozi.

| Role | Treatment |
| --- | --- |
| Chapter identity | Raw lighter source colour against its companion; 76:24 field on desktop, narrow companion edge on phones |
| Sustained reading | Ground = lighter member mixed 55% toward white; ink = darker member mixed 68% toward black |
| Study / pointers | Three-colour field with two bounded colour marks; text uses black or white by measured luminance |
| Artifact plates | Four-colour field and three bounded colour marks; artwork itself remains unchanged |
| Night reading | Lighter source member shaded 35% toward black, then adjusted until luminance ≤0.14; white ink. Each chapter keeps its hue instead of sharing one near-black ground |
| Page frame | Body and toolbar follow the reading chapter's day/night ground; the observer samples the band below the toolbar without animation or layout shifts |
| Movement breaks / video surrounds | Three-colour movement fields and four-colour gallery/video fields; original films and artwork are unchanged |

Source names and digital values are retained separately from production tokens.
They are screen approximations, not exact printed samples. Every chapter has a
Colour notes disclosure with provenance, a Palette link, selectable JSON, and
Copy JSON. Copy failure selects the text so manual copying remains possible.
The JSON includes the actual reading and support-role tokens, not only swatches.

## MoMA discipline, not museum decoration

### Earlier cover interlock / 2026-10-30 — superseded

This experiment was rejected in the owner's subsequent hierarchy review. The
unobscured-art contract above now governs. The Locating Shanghai screenshot
originally replaced the cover's former strict
side-by-side/stacked contract: solid fields carrying the title and introduction
interlock with the existing illustration. The picture retains its intrinsic
ratio and a native link opens it without the text fields. This permission is
specific to the cover, not cropping or obscuring chapter artworks. Phone images
have their own row with controlled edge overlap; Chinese uses a .96 optical
display scale. All text remains enlargeable.
Short labels use closer, script-aware leading and margins. Sustained-reading
size and leading, chapter voices, palette roles and 1:3 image rhythm remain.
See `docs/COVER_RHYTHM_2026-10-30.md` for rendered proof and dispositions.

One 1440px editorial grid; 58ch reading measure; a 2:1 prose/evidence relationship;
space and solid colour fields do the grouping. No new gradients, shadows,
rounded cards, simulated paper grain, or decorative border frames. Geometry
is balanced by default. A large companion field belongs to the chapter doorway,
not behind paragraphs. Paintings, Chinese characters, audio, and comics are
earned content and remain available.

## Composition revision / 2026-10-02

The cover now shares one twelve-column grid: invitation and artwork occupy the
same spread, without a detached red poster slab. The essay and author note align
at their top edges below it. Body text is 22px, metadata and dedication are 16px,
with rem-based cover roles that enlarge with reader settings. Chapter prose
starts on the left reading edge; the supporting evidence rail sits to its right.
On phones these become a single reading sequence. Tablet toolbar branding can
shrink and wrap so enlarged text does not push working tools offscreen.

The first Palette pass made the colours legible but left the book visually
underpowered: small prose, floated thumbnails, a narrow nested text column,
and large stretches of unused ground. The revision expands the shared grid,
raises sustained reading to 22–26px, gives summaries 32–44px, and anchors the
existing chapter illustration to a coloured evidence rail. Interleaved artwork
gets a 2:3 image/text composition; wide paintings occupy the whole reading lane.
Nothing is cropped to manufacture drama. Chapter numbers give the doorway a
large geometric counterweight. Six authored idea routes are ordinary same-tab
links, available in English, Thai and Chinese.

Reference: [Getty, Sculpting Harmony](https://gehry.getty.edu/). Borrowed:
screen-owning type, artwork at meaningful scale, and clear narrative transitions.
Refused: copied assets, lettering, cinematic canvas implementation, sound
autoplay and scroll choreography. The rendered canvas was studied visually;
a DOM token extractor would not describe its composition accurately. This is
an independent reading exhibition, not a Getty reskin. Colours and export
tokens remain unchanged. The original edition remains on its separate branch.

## Composition stances / 2026-10-16

The six chapter compositions now take explicit stances in the page geometry,
so a chapter's argument reaches the eye before the word: threshold steps down
like a doorway edge; tension shears the title low against the question high;
current drifts off the reading gutter; stillness composes a centred balance
around a quiet void; workshop pins its tool to the top of the bench; chorus
answers from the other side of the field at a smaller voice-not-lead scale.
Stances apply at 768px and above; phones keep the single reading sequence.
Authored statement chapters keep their own stances through higher-specificity
rules; the generic chorus offset is explicitly zeroed for chapters 12, 33
and 67.

The four display voices carry measured optical multipliers on their doorway
titles (cap heights at 100px: Archivo Narrow 72, Crimson Pro 68, Cormorant
Garamond 73 with light strokes, JetBrains Mono 78 and 44% wider than
Archivo): direct 1.02, reflective 1.06, flowing 1.08, precise 0.92. One
shared clamp made the mono dominate and the garamond starve; equal presence
is now measured, not assumed. `npm run verify:character` asserts every
stance and every multiplier at 768px in day and Yin themes, all three
languages.

Archivo Narrow is the English display face; Source Sans 3 is the reading face.
IBM Plex Sans Thai keeps Thai readable without Latin tracking conventions.
Noto Sans SC handles modern Chinese UI, while original text retains its literary
and calligraphic faces. New layout CSS has one breakpoint: 768px.

## Chapter voices / contextual type

Typography changes at chapter headings, where it can express a different idea
without interrupting continuous reading. The existing font requests supply four
voices: Archivo Narrow 600 for practical action, Crimson Pro 600 for origins and
stillness, Cormorant Garamond 600 for water/yielding, and JetBrains Mono 500 for
paradox and interruption. Each choice follows the chapter's existing editorial
mood, not a random rotation. These associations are Dr Non's interpretation.

Thai headings retain IBM Plex Sans Thai. Reflective/flowing Chinese headings use
Noto Serif SC; direct/precise headings use Noto Sans SC. Long prose retains Source
Sans 3 with deliberate script coverage. Colour notes explain the type choice in
three languages; their copyable JSON includes heading/body families and weight.
No synthetic italic display treatment or extra font request is introduced.

Font licences: [Cormorant Garamond](https://github.com/google/fonts/blob/main/ofl/cormorantgaramond/OFL.txt),
[Crimson Pro](https://github.com/google/fonts/blob/main/ofl/crimsonpro/OFL.txt),
[JetBrains Mono](https://github.com/google/fonts/blob/main/ofl/jetbrainsmono/OFL.txt)
retain SIL Open Font License 1.1, separate from this project's MIT code.
Script-fluent reader review is still needed.

Saved Yin also changes the cover's own blue ground/ink pair. Its descendants
inherit those local tokens, never the chapter-frame ink on a fixed light field.
Language selectors choose script typography, not foreground colours. Chapter
entrance transforms are disabled: the old 10px reveal moved native jump targets
after arrival. Navigation is tested at its stable resting position.

## Architecture / progressive layer

```text
chapters / summaries / extended / artifacts / audio / existing tools
                          ↓
                    app.js renders
                          ↓
chapter_palettes.js → exhibition.js assigns roles + groups existing panels
                          ↓
            exhibition.css controls the final cascade
                          ↓
        Reader → Original → Study → Palette JSON → another project
```

This is a progressive layer over the existing static book. No framework or
build step is introduced. Without the layer, original reading content remains
in `app.js` and the original datasets. Closed study drawers expand for printing.

## Verification and maintenance

```sh
npm run audit:integrity
npm run audit:palettes
npm run verify:accessibility
npm run verify:contrast
npm run verify:composition
npm run verify:typography
```

The palette gate checks 81 distinct source pairs, correct 2/3/4 cardinalities,
complete chapter assignment, and 648 day/night production foreground/background pairs.
Minimum measured contrast is 4.68:1. The computed-style gate is separate because
legacy descendant rules can override otherwise correct tokens.
`npm run verify:palette-surfaces` checks all 81 chapters in both saved themes at
375, 768, and 1280px, including matching exported JSON, gallery/video grounds,
page-frame tracking, language switching, and next-chapter navigation. The 81
distinct pairs share some lighter members, producing 53 distinct reading grounds.

Walkthrough: begin → directory → chapter 8 → Thai → Chinese → English; jump to
81 on the first attempt; open and close a study drawer; learn a character; open
Colour notes, parse/copy its JSON; use the guide and map; verify mobile Menu and
desktop More tools; return with browser Back. Check 376, 768, and 1280px widths.
Screen-reader and real older-user evaluation are still needed; a scripted check
does not establish the Mama Rule.

Data licensing is in [THIRD_PARTY_PALETTE.md](THIRD_PARTY_PALETTE.md).
The book's existing text and translation rights are unchanged.
