design: bundle Inter + JetBrains Mono (OFL-1.1) as the standard typefaces
The DESIGN.md type standard needs the fonts actually present — the machine's installed faces are not a design system. Four Inter weights (400/500/600/700) and two JetBrains Mono weights (500/600) ship as WPF resources from Assets/Fonts; the token families resolve them with the `/Assets/Fonts/#Family` pack form, so nothing depends on an install or a network fetch. Licensing (recorded in docs/ai/product.md): OFL-1.1 is a free licence but is NOT GPL-compatible in the linking sense. These are separate .ttf files loaded through WPF's font stack — an aggregate, not linked code — so they coexist with the GPL-3.0 app. Obligations carried: copyright line in THIRD-PARTY-NOTICES.txt (new items 13-14), the OFL text beside the files (Assets/Fonts/OFL-*.txt), no modification, no reserved-name reuse. Guard: BundledFontsTests — files exist and are real binaries, the csproj ships them, the theme uses pack URIs (a bare family name would silently fall back), the notice and both OFL texts are present, and no third font family sneaks in. Pending visual confirmation: the first launch should render panel text in Inter and telemetry in JetBrains Mono.
This commit is contained in:
@@ -177,5 +177,5 @@ rejected in favour of the values above.
|
||||
- **Still to sweep:** `Themes/Controls.xaml` and the dozens of hardcoded hexes in XAML/C# still use
|
||||
the legacy palette. Surfaces convert one at a time; the end state is that every colour, radius and
|
||||
spacing value resolves from `Tokens.xaml` and a guard fails on any raw `#hex` outside it.
|
||||
- Fonts (Inter, JetBrains Mono) are declared as token families with system fallbacks; the bundled
|
||||
font assets land next.
|
||||
- **Fonts ship with the app** (`Assets/Fonts/*.ttf`, OFL-1.1) — no installation, no network, no
|
||||
dependence on what the machine happens to have. Notice and license text travel with them (`THIRD-PARTY-NOTICES.txt` items 13-14).
|
||||
|
||||
Reference in New Issue
Block a user