Alex Dunmow 98293cf8ab feat(magazine-bold): Wave A theme lane (WO-TF-021) — streetwear / fashion drops
Full Wave A build to the OVERRIDE-CONTRACT (frozen cms a0f07e2ae):

- 49 mandatory builtin overrides in templates/overrides/magazine-bold/,
  re-skinned to streetwear cover-story chrome (massive condensed uppercase
  Archivo Black headlines, heavy 2px rules, hard square edges, mono datelines,
  fluoro accent slabs). Every content field, provider var, custom tag and JS
  block preserved verbatim from the frozen builtin defaults; legacy button
  (link/style/label) and card (media/text) field reads already reconciled.
- 7 page templates: default, full-width, landing, article, blog-index,
  contact, auth.
- 4 persona blocks (deleted masthead/photo_essay/pull_quote/issue_archive/
  colophon — now overrides of navbar/gallery/quote/post-index/footer):
  cover_story, lookbook, drop_calendar, credits_ticker.
- 5 dual-mode presets (newsprint+voltage light / ink-black+fluoro dark), all
  19 tokens, dark tuned not inverted.
- Bundled OFL woff2: Archivo Black (display), Inter (body), IBM Plex Mono
  (labels); fonts.json + assets/fonts/LICENSES.md. All font-family via
  var(--font-heading|body|mono, fallback).
- Themed email-safe wrapper (tables, inline styles, streetwear defaults).
- Master pages (navbar/footer/slot chrome) + seed demo site (OFFCUT label:
  home, about, blog + 3 posts, contact with data table + row_inserted →
  email-admins workflow, login) in fashion-label voice.
- MID motion tier: marquee ticker, scroll reveal, duotone hover, scroll
  progress bar — all prefers-reduced-motion honored with static fallback,
  no canvas.
- Icon packs (lucide, simple-icons) declared in plugin.mod + RECOMMENDED_ICONS.

Verified: `make build` exit 0; `check-safety` 32 checks 19 ok 13 skip -> OK.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 12:38:05 +08:00

35 lines
1.7 KiB
YAML

# Magazine Bold theme block definitions (codeless .bnp, WO-TF-021).
#
# These are the theme's TRUE persona blocks — streetwear / fashion-drop
# furniture with no builtin equivalent. Everything the theme used to ship that
# duplicated a builtin (masthead, photo essay, pull quote, issue archive,
# colophon) is now a re-skin OVERRIDE of a builtin (navbar, gallery, quote,
# post-index, footer) under templates/overrides/magazine-bold/. Keys are fully
# qualified (magazine-bold:<key>) because the codeless loader registers
# definitions verbatim.
blocks:
- key: magazine-bold:cover_story
title: Cover Story
description: Asymmetric magazine cover — mono folio kicker, massive condensed headline, deck and a duotone cover image with a shop/read CTA.
category: theme
schema: cover_story.schema.json
template: cover_story.ninjatpl
- key: magazine-bold:lookbook
title: Lookbook
description: Grid of duotone look frames with mono numbering, captions and optional shop links — the drop's lookbook spread.
category: theme
schema: lookbook.schema.json
template: lookbook.ninjatpl
- key: magazine-bold:drop_calendar
title: Drop Calendar
description: Dated list of upcoming and past drops — mono datelines, condensed names and a live/soon/sold status tag.
category: theme
schema: drop_calendar.schema.json
template: drop_calendar.ninjatpl
- key: magazine-bold:credits_ticker
title: Credits Ticker
description: Marquee strip of credits (photographer, stylist, cast) — MID-motion scroll, paused on hover, static under prefers-reduced-motion.
category: theme
schema: credits_ticker.schema.json
template: credits_ticker.ninjatpl