docs(about-page): lock spec as approved; final photos sole open item
Resolve §9 open questions: hero title "The Collective", Khabran bio as empty-slot placeholder, wwwroot/img hosting, Process placement for "designed not extracted". COPY D approved provisional; typo flags kept.
This commit is contained in:
+55
-59
@@ -1,15 +1,16 @@
|
||||
# About Page — DeepDrft public site — Design Spec
|
||||
|
||||
Status: **proposed — copy largely settled** (2026-06-17). Author: product-designer. Date: 2026-06-17.
|
||||
Implementer: staff-engineer (when approved). Surface: **public site only** (`DeepDrftPublic` /
|
||||
`DeepDrftPublic.Client`).
|
||||
Status: **APPROVED for implementation** — structure + copy signed off 2026-06-17 (Phase 12). Author:
|
||||
product-designer. Date: 2026-06-17. Implementer: staff-engineer. Surface: **public site only**
|
||||
(`DeepDrftPublic` / `DeepDrftPublic.Client`).
|
||||
|
||||
> **Copy status (2026-06-17 review):** A, B, C, E, D-intro, F, G, H are **APPROVED** — Daniel's
|
||||
> verbatim words, set. **D (Process card bodies) is a fresh DRAFT** pending Daniel's pass (redrafted
|
||||
> per his "spice it up, no Octave One" direction). **Khabran's bio is still TODO.** Remaining open
|
||||
> items (Khabran's bio, final photos, image hosting path, hero title wording, "designed not
|
||||
> extracted" placement) are being resolved separately. Approved blocks ship as written; the one
|
||||
> remaining draft (D) does not ship without Daniel's pass.
|
||||
> **Approval (2026-06-17):** Daniel signed off the structure and all copy. The spec is
|
||||
> implementation-ready. All COPY blocks (A–H, D-intro) are **APPROVED** — D (Process card bodies) is
|
||||
> approved *provisionally*: Daniel's word was "it's fine for now, we can change that wording later,"
|
||||
> so the body copy may still be reworded before or after build. The **only remaining open item is the
|
||||
> final photo files** (§8, item 2) — Daniel is still sorting them; every image slot stays a
|
||||
> graceful-degrade placeholder until files land. Khabran's bio is resolved: build the card now with an
|
||||
> empty/placeholder body slot, Daniel drops his text in later.
|
||||
|
||||
Cross-references: `Pages/Home.razor` + `Pages/Home.razor.css` (the visual language this page mirrors
|
||||
— inspected, not invented), `Controls/DeepDrftHero.razor` (hero type treatment),
|
||||
@@ -77,7 +78,7 @@ structure is legible without a heading that says "Movement One."
|
||||
```
|
||||
┌─ HERO (split 50/50) ──────────────────────────────────────────┐
|
||||
│ left: eyebrow "Charleston, South Carolina" │
|
||||
│ title "Deep <em>DRFT</em>" or "Who We <em>Are</em>" │
|
||||
│ title "The <em>Collective</em>" │
|
||||
│ standfirst (the ethos line, condensed) │
|
||||
│ right: DUO HERO PORTRAIT [IMG SLOT A — likely hero] │
|
||||
├─ full-bleed parallax band [IMG SLOT B — duo or gear] ─────────┤
|
||||
@@ -131,8 +132,8 @@ Mirror Home's `.hero` split.
|
||||
|
||||
- **Left (`md=6`, `.hero-left`):** eyebrow + title + standfirst, using the `.hero-*` classes.
|
||||
- Eyebrow: `Charleston, South Carolina` (matches Home's hero eyebrow — anchors place immediately).
|
||||
- Title: a one-or-two-word masthead with the `<em>` device. Candidate: **"Who We <em>Are</em>"**
|
||||
or simply **"The <em>Collective</em>"**. (Header — proposed, not copy.)
|
||||
- Title: **"The <em>Collective</em>"** (RESOLVED 2026-06-17). The `<em>` device falls on
|
||||
*Collective*. This is a label, not body copy.
|
||||
- Standfirst: the condensed ethos line — see `[COPY A]` below.
|
||||
- **Right (`md=6`):** **IMG SLOT A — the duo hero portrait.** This is the **likely hero image**.
|
||||
A duo shot reads "two people, a collective" at first paint. Aspect: landscape or square works in
|
||||
@@ -182,13 +183,13 @@ Per card:
|
||||
title. Candidate label: *Production · Sound Design · Live* (proposed UI label, not copy).
|
||||
- **Bio body** — `[BIO SLOT — Daniel supplies per member]`.
|
||||
|
||||
> **Khabran's bio is an OPEN TODO** — Daniel will add it later (open question §8). Daniel's bio
|
||||
> material exists in the interview transcript and is drafted below for approval; **Khabran's card
|
||||
> renders its slot empty / with a placeholder until his text arrives.** Design the card so a missing
|
||||
> bio degrades gracefully (portrait + name + role line still compose; the body block simply absent) —
|
||||
> the same null-renders-nothing discipline `ReleaseDescription` uses.
|
||||
> **Khabran's bio — RESOLVED (2026-06-17):** build the card now with an empty / placeholder body
|
||||
> slot; Daniel drops his text in later. This is not a blocker — **the card must compose correctly
|
||||
> with the body absent** (portrait + name + role line still render; the body block simply omitted) —
|
||||
> the same null-renders-nothing discipline `ReleaseDescription` uses. Daniel's bio (`[COPY C]`) is
|
||||
> approved verbatim below.
|
||||
|
||||
> `[COPY C — APPROVED — Daniel bio, Daniel's words verbatim; Khabran's TBD]`
|
||||
> `[COPY C — APPROVED — Daniel bio, Daniel's words verbatim; Khabran's body slot ships empty until he supplies it]`
|
||||
> Daniel started on drums at ten and embarked in electronic music at seventeen — synthesizers first.
|
||||
> A metalhead at from a young age, he spent ten years as an engineer living near Detroit filling the
|
||||
> nights with synthesized tones and rhythms, shaped most of all by modern underground Detroit techno.
|
||||
@@ -196,10 +197,11 @@ Per card:
|
||||
> tools behind the tracks are just as important as the finished sound. To him the science and the
|
||||
> math matter as much as the beauty — tension and release, built deliberately.
|
||||
|
||||
> **Typo flags (for Daniel's confirmation — text preserved verbatim above, not auto-corrected):**
|
||||
> (1) "embarked **in** electronic music" reads as a likely slip for "embarked **on**"; (2) "A
|
||||
> metalhead **at from** a young age" reads as a likely slip for "A metalhead **from** a young age."
|
||||
> Both left as Daniel wrote them — his to confirm or keep.
|
||||
> **Typo flags (Daniel has chosen to KEEP these verbatim for now — text preserved above, not
|
||||
> auto-corrected; flag retained so it isn't lost):** (1) "embarked **in** electronic music" reads as
|
||||
> a likely slip for "embarked **on**"; (2) "A metalhead **at from** a young age" reads as a likely
|
||||
> slip for "A metalhead **from** a young age." Both left as Daniel wrote them — his to revisit if he
|
||||
> wants.
|
||||
|
||||
### 4.2 Optional split — the meeting / origin
|
||||
|
||||
@@ -228,7 +230,7 @@ with a hand-rolled SVG icon in the existing `.feature-icon` slot:
|
||||
4. **Live Rig** — a big spread of hardware played 100% live, DAWless, sometimes fully improvised.
|
||||
Built for the room / the warehouse.
|
||||
|
||||
> `[COPY D — FOR APPROVAL — Process card bodies — REDRAFT per Daniel's "spice it up, no Octave One" note]`
|
||||
> `[COPY D — APPROVED (provisional) — Process card bodies — wording may be revised later per Daniel]`
|
||||
> 1. *Sketch — A loop starts on the Force or the MPC, hands on the pads. The idea has to survive
|
||||
> first contact before anything else gets built around it.*
|
||||
> 2. *Arrange — Sometimes into Ableton, sometimes start-to-finish in REAPER. The track gets shaped
|
||||
@@ -244,9 +246,9 @@ with a hand-rolled SVG icon in the existing `.feature-icon` slot:
|
||||
> the room. The soul in this music is designed, not extracted; assembled, not distilled.
|
||||
|
||||
(The "designed, not extracted / assembled, not distilled / constructed, not grown" line is the
|
||||
sharpest statement of the logos register and the soul-is-engineered thesis. Recommend it land here,
|
||||
in the Process movement, rather than the hero — it's the *why behind the method*, and it pays off
|
||||
the dark band. Flag for Daniel: hero standfirst vs. Process — his call.)
|
||||
sharpest statement of the logos register and the soul-is-engineered thesis. **RESOLVED
|
||||
(2026-06-17): it lands here, in the Process movement** — carried by COPY D-intro above — not the
|
||||
hero. It is the *why behind the method* and pays off the dark band.)
|
||||
|
||||
Below the dark band: a **full-bleed parallax** (IMG SLOT D — **hands-on-gear shot**, the literal
|
||||
proof-of-effort image). Home's trailing `mixer.jpg` / `mixer-bw.jpg` pair is the precedent.
|
||||
@@ -326,44 +328,38 @@ If only 4 files arrive, the two safe drops are slot B (the hero column A already
|
||||
and slot E (the closing band is decorative). The two bio portraits (C1/C2) and one gear shot (D) are
|
||||
the load-bearing four.
|
||||
|
||||
### Image hosting — OPEN QUESTION for implementation
|
||||
### Image hosting — RESOLVED (2026-06-17)
|
||||
|
||||
**Where do these images physically live, and by what path are they served?** Two precedents exist in
|
||||
the repo and they differ:
|
||||
|
||||
- **Static `wwwroot/img/`** — every Home page image (`dd-duo-hero.jpeg`, `mixer.jpg`, etc.) is a
|
||||
committed static asset under `DeepDrftPublic/wwwroot/img/`, referenced as `img/...`. Simplest;
|
||||
these are brand/marketing assets, not catalogue content. **This is the likely right home** for the
|
||||
About images by direct analogy to Home.
|
||||
- **Image vault / streaming endpoint** — release cover art and session hero images go through the
|
||||
FileDatabase Image vault and the unauthenticated image-streaming endpoint. That machinery is for
|
||||
*content* (covers, hero images tied to releases), not chrome. The About portraits are chrome.
|
||||
|
||||
**Recommendation (flag, do not resolve):** put the About images in `wwwroot/img/` alongside the Home
|
||||
assets — they are marketing chrome with the exact lifecycle of the existing Home photos. Only reach
|
||||
for the vault if Daniel wants these editable from the CMS, which the brief gives no signal of. **This
|
||||
is staff-engineer's call at implementation; named here so it isn't discovered mid-build.**
|
||||
**Static serving under `DeepDrftPublic/wwwroot/img/`, same as the existing Home photos.** The About
|
||||
page is not dynamic — these are marketing chrome with the exact lifecycle of the Home photos
|
||||
(`dd-duo-hero.jpeg`, `mixer.jpg`, etc.), committed static assets referenced as `img/...`. **No image
|
||||
vault** — that machinery is for *content* (release covers, session hero images tied to releases), and
|
||||
the About portraits are chrome, not content. Files drop into `wwwroot/img/` and are referenced
|
||||
directly.
|
||||
|
||||
---
|
||||
|
||||
## 9. Open questions (for Daniel)
|
||||
## 9. Open questions — resolved 2026-06-17
|
||||
|
||||
1. **Khabran's bio.** Not yet supplied — the card renders its body slot empty/placeholder until it
|
||||
arrives. Daniel's bio is drafted from the transcript (`[COPY C]`); both are his to finalise.
|
||||
2. **Final photos.** 4–5 files still being sorted; every image slot is a TODO. Spec is laid out so
|
||||
placement is ready when files arrive (§8).
|
||||
3. **Image hosting path.** `wwwroot/img/` (recommended, Home-analogous) vs. the image vault. Flagged
|
||||
for staff-engineer; recommendation in §8.
|
||||
4. **CUTS / SESSIONS / MIXES — explained on About?** **RESOLVED (2026-06-17): yes, via the
|
||||
one-line-per-medium `.medium-card` grid (§6.1), per COPY F approval.**
|
||||
5. **Where does the "designed, not extracted" thesis land** — hero standfirst or the Process
|
||||
movement? Recommend Process (§5). *(Still open — Daniel resolving separately.)*
|
||||
6. **Hero title wording** — "Who We Are" vs. "The Collective" vs. a Deep/DRFT masthead echo. Header
|
||||
is proposed; Daniel's call. *(Still open — Daniel resolving separately.)*
|
||||
7. **Copy status (2026-06-17 review):** A, B, C, E, D-intro, F, G, H are **APPROVED** (Daniel's
|
||||
verbatim words). **D (Process card bodies) is a fresh DRAFT** pending Daniel's pass. **Khabran's
|
||||
bio is still TODO** (item 1). Two suggested typo-fixes in COPY C are flagged inline for Daniel's
|
||||
confirmation; his text is preserved verbatim.
|
||||
The structure and all copy are signed off (Phase 12). **The only remaining open item is item 2 —
|
||||
final photo files.** Everything else is resolved.
|
||||
|
||||
1. **Khabran's bio.** **RESOLVED** — build the card now with an empty/placeholder body slot; Daniel
|
||||
drops his text in later. The card composes with the body absent (§4.1). Daniel's bio (`[COPY C]`)
|
||||
is approved verbatim.
|
||||
2. **Final photos. — STILL OPEN (the one remaining TODO).** 4–5 files still being sorted; every image
|
||||
slot stays a graceful-degrade placeholder until files land. Spec is laid out so placement is ready
|
||||
when files arrive (§8).
|
||||
3. **Image hosting path.** **RESOLVED** — static `DeepDrftPublic/wwwroot/img/`, same as Home photos;
|
||||
no image vault (§8).
|
||||
4. **CUTS / SESSIONS / MIXES — explained on About?** **RESOLVED** — yes, via the one-line-per-medium
|
||||
`.medium-card` grid (§6.1), per COPY F approval.
|
||||
5. **Where does the "designed, not extracted" thesis land?** **RESOLVED** — the Process movement,
|
||||
carried by COPY D-intro (§5).
|
||||
6. **Hero title wording.** **RESOLVED** — "The <em>Collective</em>" (§3).
|
||||
7. **Copy status.** **RESOLVED** — all COPY blocks (A–H, D-intro) approved; D (Process card bodies)
|
||||
approved *provisionally* (wording may be reworded later per Daniel). The two suggested typo-fixes
|
||||
in COPY C are flagged inline; Daniel has chosen to keep his text verbatim for now.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user