themes-y2k/RECOMMENDED_FONTS.md
Alex Dunmow 49f9c90589 initial: theme plugin y2k
Bootstrapped during the 2026-06-06 BlockNinja consolidation. Was previously
an unversioned directory inside ~/src/blockninja-themes/y2k.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-06 14:11:46 +08:00

2.2 KiB

Recommended fonts for the Y2K theme

The Y2K theme ships fonts.json = [] per the wave-1 fonts policy (~/src/blockninja/themes/docs/FONTS.md). The theme CSS consumes fonts via the host CSS custom properties --font-heading, --font-body, --font-mono with fallback stacks tuned to match the spec's intended aesthetic.

To get the intended Y2K look, an admin should open the typography panel and assign the following Google Fonts (or upload the licensed picks where noted):

Heading (display)

  • Stretch Pro — commercial, not in the Google Fonts curated list.
    • Source: upload:Stretch Pro (admin must source the woff2 separately and upload via the typography panel's Upload tab).
    • Why: matches the spec's primary display face for chrome-stretched headlines.
  • VT323 — open license, available in Google Fonts.
    • Source: google:VT323.
    • Instruction: Open the typography panel, switch to the Google Fonts tab, search "VT323", click Add, then assign it to the Heading slot. Use this when Stretch Pro is not licensed for the site.

Body

  • Inter Tight — open license, available in Google Fonts.
    • Source: google:Inter Tight.
    • Instruction: Open the typography panel, switch to the Google Fonts tab, search "Inter Tight", click Add, then assign it to the Body slot.

Mono

  • Departure Mono — open license, available as a single-foundry download.
    • Source: upload:Departure Mono (sourced from https://departuremono.com — admin uploads the woff2 via the Upload tab).
    • Instruction: After uploading the woff2, assign it to the Mono slot in the typography panel.

What works out of the box

Until an admin assigns fonts, the theme renders with the following fallback stacks (declared in css.go via the host Tailwind input):

  • Headings: var(--font-heading, "Stretch Pro", "VT323", "Courier New", monospace)
  • Body: inherited from the host --font-body with default system-ui, -apple-system, Segoe UI, Roboto, sans-serif.
  • Mono: inherited from the host --font-mono with default ui-monospace, "Departure Mono", "JetBrains Mono", monospace.

These keep the theme readable and on-brand even before any picker action.