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

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

47 lines
1.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Noir — Recommended Fonts
Noir ships with `fonts.json = []` per the wave-1 fonts policy
(`themes/docs/FONTS.md`). No woff2s are bundled in this implementation
pass. The site admin assigns fonts via the typography settings panel.
The fallback stacks in `assets/style.css` already approximate the
intended Noir aesthetic (Tenor Sans display, Inter body, JetBrains
Mono captions) using widely available system faces. The picks below
match the spec exactly and are recommended once an admin opens the
font picker.
## Heading
- **Source**: `google:Tenor Sans`
- **Family**: `Tenor Sans`
- **Why**: high-contrast modern serif with the silver-print
monograph feel called for in spec §3.
- **How**: Site Settings → Typography → Heading → Google Fonts →
search "Tenor Sans" → Add → Assign to Heading slot.
## Body
- **Source**: `google:Inter`
- **Family**: `Inter`
- **Why**: humanist sans, large x-height, reads cleanly at the
generous leading the override uses.
- **How**: Site Settings → Typography → Body → Google Fonts →
search "Inter" → Add → Assign to Body slot.
## Mono
- **Source**: `google:JetBrains Mono`
- **Family**: `JetBrains Mono`
- **Why**: tight mono with strong forms at 1011px, the spec's
caption-strip and frame-number face.
- **How**: Site Settings → Typography → Mono → Google Fonts →
search "JetBrains Mono" → Add → Assign to Mono slot.
## Notes for wave-2
Once licensed woff2s are commissioned (e.g. a darkroom-grade display
face), drop them into `assets/fonts/web/` and declare them in
`fonts.json`. The CMS will emit `@font-face` blocks automatically; no
`CSSManifest.InputCSSAppend` changes required. Add the licence to a
new `LICENSES.md` at the theme root and remove this `RECOMMENDED_FONTS.md`.