Elide the source projects' names and links; rename 'Why arbitrary' to 'Rationale'
Removed every named/linked reference to the three real personal projects
this system was synthesized from (repo names, GitHub links, and specific
enough functional descriptions to identify them), across index.md,
README.md, rationale.md, both foundation pages, and both pattern pages.
The design rationale itself is unchanged — which visual property came
from reading real, running apps rather than a spec — just without saying
which apps.
Also renamed the 'Why arbitrary' nav label and page title to 'Rationale':
as a page title it read as an incomplete sentence rather than a question
about the name.
diff --git a/README.md b/README.md
index 76df3da..f3216b3 100644
--- a/README.md
+++ b/README.md
@@ -17,11 +17,9 @@ because it is correct. What makes it a *system* is not that the choices are
correct but that they are written down once, given names, actually used, and
therefore changeable.
-It was synthesized, not specified — built by reading three real projects
-([domus](https://github.com/kejadlen/domus),
-[ketchup](https://github.com/kejadlen/ketchup),
-[quire](https://github.com/kejadlen/quire)) and finding what they actually
-share. See [Why arbitrary](https://kejadlen.github.io/arbitrary-definitions-design-system/rationale/)
+It was synthesized, not specified — built by reading three real personal
+projects and finding what they actually share. See
+[Rationale](https://kejadlen.github.io/arbitrary-definitions-design-system/rationale/)
for the full story.
This is a small, personal project, so it is built as plainly as it can be:
diff --git a/_data/nav.yml b/_data/nav.yml
index 4bb43ab..21c2944 100644
--- a/_data/nav.yml
+++ b/_data/nav.yml
@@ -1,7 +1,7 @@
- title: Start here
links:
- { text: Overview, url: / }
- - { text: Why arbitrary, url: /rationale/ }
+ - { text: Rationale, url: /rationale/ }
- { text: Using the CSS, url: /install/ }
- title: Foundations
links:
diff --git a/_foundations/color.md b/_foundations/color.md
index f4ed690..8a07509 100644
--- a/_foundations/color.md
+++ b/_foundations/color.md
@@ -22,7 +22,7 @@ at different values — which is exactly what the dark block does.
<p style="margin:0; font-size: var(--ad-step--1);">
The neutral ramps were authored in <code>oklch()</code> by the three
projects this system was synthesized from (see
- <a href="<%= relative_url('/rationale/') %>">Why arbitrary</a>). Every
+ <a href="<%= relative_url('/rationale/') %>">Rationale</a>). Every
value below is that same color converted to flat sRGB hex — not
re-picked, not rounded. The contrast figures on this page are computed
from those hex values with the standard WCAG 2.1 relative-luminance
@@ -32,11 +32,11 @@ at different values — which is exactly what the dark block does.
## Neutral
-Low-chroma warm-gray — the intersection of ketchup's plain grays, quire's
-warm cream/dark palette, and domus's warm paper. Ten steps, not twelve or
+Low-chroma warm-gray — the intersection of several source apps' plain grays,
+warm cream/dark palettes, and warm paper surfaces. Ten steps, not twelve or
sixteen: the source defines exactly these.
-<p class="ad-muted">Low-chroma warm-gray — the intersection of ketchup's plain grays, quire's warm cream/dark palette, and domus's warm paper. Not stark white or black, and not any one project's specific warmth. Ten steps, not twelve: the source defines exactly 0/50/100/150/200/300/500/600/800/900 — steps 400 and 700 do not exist.</p>
+<p class="ad-muted">Low-chroma warm-gray — the intersection of several source apps' plain grays, warm cream/dark palettes, and warm paper surfaces. Not stark white or black, and not any one project's specific warmth. Ten steps, not twelve: the source defines exactly 0/50/100/150/200/300/500/600/800/900 — steps 400 and 700 do not exist.</p>
<ul class="ad-swatch-grid">
<li class="ad-swatch">
<div class="ad-swatch__chip" style="background: #faf9f7; color: #171512;">n-0</div>
@@ -110,7 +110,7 @@ sixteen: the source defines exactly these.
</li>
</ul>
-<p class="ad-muted">The same low-chroma warm-gray scale, inverted, matching quire's OS-preference dark palette. Same ten step numbers as `neutral`; `0` is the darkest step here (the dark-theme page background) rather than the lightest.</p>
+<p class="ad-muted">The same low-chroma warm-gray scale, inverted, matching one source app's OS-preference dark palette. Same ten step numbers as `neutral`; `0` is the darkest step here (the dark-theme page background) rather than the lightest.</p>
<ul class="ad-swatch-grid">
<li class="ad-swatch">
<div class="ad-swatch__chip" style="background: #0e0d0b; color: #ffffff;">nd-0</div>
@@ -198,7 +198,7 @@ the default; the other four are the sanctioned menu a project can switch to.
<li>
<div class="ad-accent-demo" style="background: #9a5a3c;">clay</div>
<div class="ad-specimen__meta"><code>#9a5a3c</code><span>5.38:1 on white</span></div>
- <p class="ad-muted" style="font-size: var(--ad-step--2); margin: var(--ad-space-3xs) 0 0;">Warm, archival — domus's flavor.</p>
+ <p class="ad-muted" style="font-size: var(--ad-step--2); margin: var(--ad-space-3xs) 0 0;">Warm, archival — one source app's flavor.</p>
</li>
<li>
<div class="ad-accent-demo" style="background: #2b4a78;">ink-blue</div>
diff --git a/_foundations/typography.md b/_foundations/typography.md
index 38725b1..90551cd 100644
--- a/_foundations/typography.md
+++ b/_foundations/typography.md
@@ -29,7 +29,7 @@ summary: >-
<div class="ad-specimen">
<div class="ad-specimen__meta">
<code>--ad-font-serif</code>
- <span>Opt-in reading variant for a project that wants an editorial, archival feel (domus-style). Not loaded by default; web-safe only.</span>
+ <span>Opt-in reading variant for a project that wants an editorial, archival feel. Not loaded by default; web-safe only.</span>
</div>
<div class="ad-specimen__sample" style="font-family: var(--ad-font-serif); font-size: 1.5rem;">
Arbitrary Definitions — 0123456789
diff --git a/_patterns/archive.md b/_patterns/archive.md
index d9ef63a..656ef69 100644
--- a/_patterns/archive.md
+++ b/_patterns/archive.md
@@ -7,9 +7,9 @@ summary: >-
---
Archive is not a real product — it is the system's own reference layout for a
-mobile capture flow: the shape `kejadlen/domus` (a household inventory and
-document archive) would take if it were rebuilt on this token set, at its
-390×760 frame. Three screens, abbreviated to what each one adds.
+mobile capture flow: the shape a household inventory and document archive
+app would take if it were rebuilt on this token set, at its 390×760 frame.
+Three screens, abbreviated to what each one adds.
<figure class="example">
<figcaption>Home — recent captures</figcaption>
diff --git a/_patterns/loop.md b/_patterns/loop.md
index 838a6c3..24f8f7e 100644
--- a/_patterns/loop.md
+++ b/_patterns/loop.md
@@ -7,10 +7,10 @@ summary: >-
---
Loop is not a real product — it is the system's own reference layout for a
-dense, table-ish list screen: the shape `kejadlen/ketchup` (a recurring-task
-tracker) would take if it were rebuilt on this token set. Every visible value
-below is a component from this system; nothing here is page-specific CSS
-beyond a couple of inline widths.
+dense, table-ish list screen: the shape a recurring-task tracker would take
+if it were rebuilt on this token set. Every visible value below is a
+component from this system; nothing here is page-specific CSS beyond a
+couple of inline widths.
<figure class="example">
<figcaption>Loop</figcaption>
diff --git a/index.md b/index.md
index 1e90fde..547a918 100644
--- a/index.md
+++ b/index.md
@@ -43,17 +43,14 @@ description: >-
## Where it came from
-Synthesized by reading three real projects, not copied from any one of them:
-[domus](https://github.com/kejadlen/domus) (a household inventory and
-document archive — warm paper surfaces, a swappable "Clay" accent, a
-capture dock), [ketchup](https://github.com/kejadlen/ketchup) (a
-recurring-task tracker — all-mono, plain grays, a flash-bar toast), and
-[quire](https://github.com/kejadlen/quire) (a personal git forge — humanist
-sans and mono, a full dark palette, underline tabs). The one literal constant
-across all three is an identical Utopia fluid type/space scale — adopted
-verbatim as this system's spine. Everything else is a synthesized middle
-ground. See [Why arbitrary](<%= relative_url('/rationale/') %>) for the full
-story, including where this system knowingly guesses.
+Synthesized by reading three real personal projects, not copied from any one
+of them: one leaned on warm paper surfaces, a swappable accent, and a
+capture dock; one was all-mono with plain grays and a flash-bar toast; one
+paired a humanist sans with a full dark palette and underline tabs. The one
+literal constant across all three is an identical Utopia fluid type/space
+scale — adopted verbatim as this system's spine. Everything else is a
+synthesized middle ground. See [Rationale](<%= relative_url('/rationale/') %>)
+for the full story, including where this system knowingly guesses.
## How it is put together
diff --git a/rationale.md b/rationale.md
index 59e0cd6..7b2140e 100644
--- a/rationale.md
+++ b/rationale.md
@@ -1,10 +1,10 @@
---
-title: Why arbitrary
+title: Rationale
permalink: /rationale/
section: Start here
summary: >-
- Why this system was synthesized from three real projects instead of
- written from a spec, and the contract its build actually enforces.
+ Why this system was synthesized from real projects instead of written
+ from a spec, and the contract its build actually enforces.
---
## Where the name comes from
@@ -20,35 +20,36 @@ are therefore changeable.
## Synthesized, not specified
-This system was not designed from a blank page. It was built by reading three
-real, running personal projects and finding what they actually share:
+This system was not designed from a blank page. It was built by reading
+several real, running personal projects and finding what they actually
+share — not copied wholesale from any single one of them:
<div class="card-grid">
<article class="card">
<div class="card-body">
- <h3 style="margin:0; font: 600 var(--ad-step-0)/1.3 var(--ad-font-sans);"><a href="https://github.com/kejadlen/domus">domus</a></h3>
- <p style="margin:0; color: var(--ad-color-text-secondary); font-size: var(--ad-step--1);">Household inventory & document archive. Warm paper surfaces, a Georgia/Helvetica/mono mix, a swappable "Clay" accent, a bottom capture dock.</p>
+ <h3 style="margin:0; font: 600 var(--ad-step-0)/1.3 var(--ad-font-sans);">Warm, paper-like surfaces</h3>
+ <p style="margin:0; color: var(--ad-color-text-secondary); font-size: var(--ad-step--1);">One app leaned on Georgia/Helvetica/mono, a swappable "Clay" accent, and a bottom capture dock — the source of this system's warm-neutral surface color.</p>
</div>
</article>
<article class="card">
<div class="card-body">
- <h3 style="margin:0; font: 600 var(--ad-step-0)/1.3 var(--ad-font-sans);"><a href="https://github.com/kejadlen/ketchup">ketchup</a></h3>
- <p style="margin:0; color: var(--ad-color-text-secondary); font-size: var(--ad-step--1);">Recurring-task tracker. All-mono interface, plain grays, red/green semantics, a flash-bar toast.</p>
+ <h3 style="margin:0; font: 600 var(--ad-step-0)/1.3 var(--ad-font-sans);">All-mono, plain grays</h3>
+ <p style="margin:0; color: var(--ad-color-text-secondary); font-size: var(--ad-step--1);">Another was an all-mono interface with plain grays, red/green semantics, and a flash-bar toast — the source of this system's mono labels and semantic pair.</p>
</div>
</article>
<article class="card">
<div class="card-body">
- <h3 style="margin:0; font: 600 var(--ad-step-0)/1.3 var(--ad-font-sans);"><a href="https://github.com/kejadlen/quire">quire</a></h3>
- <p style="margin:0; color: var(--ad-color-text-secondary); font-size: var(--ad-step--1);">Personal git forge / CI server. Humanist sans + mono, a warm cream surface, a full dark palette, underline tabs.</p>
+ <h3 style="margin:0; font: 600 var(--ad-step-0)/1.3 var(--ad-font-sans);">Humanist sans, full dark palette</h3>
+ <p style="margin:0; color: var(--ad-color-text-secondary); font-size: var(--ad-step--1);">A third paired humanist sans with mono, a warm cream surface, a full dark palette, and underline tabs — the source of this system's dark-theme approach.</p>
</div>
</article>
</div>
-The one literal constant across all three is an identical
+The one literal constant across all of them is an identical
[Utopia](https://utopia.fyi) fluid type/space scale — 320→1240px viewport,
18→20px body, a 1.20→1.25 ratio — adopted verbatim as this system's spine.
Everything else (palette, radius, component set) is a synthesized middle
-ground, deliberately not lifted wholesale from any one of the three.
+ground, deliberately not lifted wholesale from any one source.
## What actually makes it a system
@@ -164,19 +165,19 @@ do the elevation work, not high contrast, so this system does not invent a
Being honest about the synthesized parts means being honest about the gaps.
-- **No shared component library or Figma exists across the three source
+- **No shared component library or Figma exists across the source
projects** — they are hand-rolled app CSS, not a design system. The
sixteen components documented here are a from-scratch, best-guess
- personal-tool kit, grounded in real patterns found in the three apps
- (ketchup's flash-bar → Toast; domus's drop-up menu → Dialog's flat
- treatment; domus's segmented control and quire's underline tabs → Tabs'
- two variants) — not a literal recreation of any one app's screens.
+ personal-tool kit, grounded in real patterns found across those apps (a
+ flash-bar toast; a drop-up menu behind Dialog's flat treatment; a
+ segmented control and an underline-tabs pattern behind Tabs' two
+ variants) — not a literal recreation of any one app's screens.
- **No logo or brand mark.** The source is explicit: render "Arbitrary
Definitions" or the project's own name in type wherever a mark would go,
and do not invent one.
- **The icon set (Lucide) is a flagged substitution.** No source project
- ships a shared icon library; domus hand-draws its own line icons, and
- ketchup/quire mostly avoid icons.
+ ships a shared icon library; one hand-draws its own line icons, and the
+ others mostly avoid icons.
- **Signal Teal, the default accent, is a synthesized pick**, not lifted from
any one project.
- **No Table, Callout, or Progress component.** An earlier pass at this site
@@ -184,7 +185,7 @@ Being honest about the synthesized parts means being honest about the gaps.
rather than re-skinned. (This documentation site still uses a plain
`<table>` and an aside box for its own reference material — those are site
chrome, not system components, and are not documented as one.)
-- **Loop and Archive are generic demonstrations**, not recreations of
- ketchup or domus specifically.
+- **Loop and Archive are generic demonstrations**, not recreations of any
+ specific source app.
Naming these is cheaper than being caught by them.