Skip to content

Restructure for Google Fonts onboarding#4

Open
Krivoblotsky wants to merge 2 commits into
mainfrom
claude/amazing-cannon-339c2c
Open

Restructure for Google Fonts onboarding#4
Krivoblotsky wants to merge 2 commits into
mainfrom
claude/amazing-cannon-339c2c

Conversation

@Krivoblotsky
Copy link
Copy Markdown
Contributor

Summary

Sets up the repo so the Fixel family can be submitted to Google Fonts via the upstream-onboarding pipeline (https://googlefonts.github.io/gf-guide/onboarding.html).

  • Reproducible buildsources/Fixel.designspace + sources/config.yaml drive gftools builder to produce one variable font with wdth + wght axes (Regular default at wdth=100, wght=400), 18 static TTFs, and matching WOFF2.
  • Upstream sources fixfeatures.fea in all 18 UFOs referenced AGL-style glyph names (uni0492, uni0401, uni04AA, …) that don't exist in the glyph sets; replaced with the actual glyph names (Gestrokecyr, Io-cy, Estailcyr, …). Without this, fontmake failed on every master.
  • Rebuilt fonts/ — drop hand-built FixelDisplay-*.ttf / FixelVariable.ttf (variable defaulted to Thin/Text, which GF rejects) in favor of Fixel[wdth,wght].ttf + Fixel-*.ttf (Display) + FixelText-*.ttf.
  • CI.github/workflows/build.yml and fontbakery.yml run the gftools build and fontbakery check-googlefonts on every PR.
  • Onboarding paperwork — real GF "About" copy in documentation/DESCRIPTION.en_us.html, rewritten README.md with build / layout / designers / license sections, and FONTBAKERY-REPORT.md tracking the FAIL categories that still need source-level fixes by the type designers (vertical metrics, GF Latin Core coverage, NBSP, vendor ID, STAT axis-value names, etc.).

Next steps before submitting to Google Fonts

Test plan

  • pip install -r requirements.txt && cd sources && gftools builder config.yaml — completes all 94 steps locally.
  • Variable font fvar: {'wght': (100, 400, 900), 'wdth': (87.5, 100, 100)}, fsType=0, STAT table with both axes.
  • fontbakery check-googlefonts runs end-to-end on VF + statics (see FONTBAKERY-REPORT.md for the current snapshot).
  • CI green on this PR.
  • Visual smoke-test in Wakamai Fondue — all 18 instances render, Cyrillic + tryzub alternate present.

🤖 Generated with Claude Code

Krivoblotsky and others added 2 commits May 11, 2026 13:50
- Add sources/Fixel.designspace and sources/config.yaml so the family
  builds reproducibly via gftools-builder
- Fix features.fea across all 18 UFOs: replace AGL-style glyph refs
  (uni0492, uni0401, uni04AA, etc.) with the actual glyph names
  (Gestrokecyr, Io-cy, Estailcyr...). Without this the build fails.
- Rebuild fonts/ with the new pipeline: one wdth+wght variable font
  (Fixel[wdth,wght].ttf, Regular default) plus 18 static TTFs and
  matching WOFF2. Drop the stale hand-built FixelDisplay-* and
  FixelVariable.ttf artifacts.
- Add GitHub Actions workflows for build and FontBakery checks
- Rewrite documentation/DESCRIPTION.en_us.html (Google Fonts About
  copy) and README.md (build, layout, designers, license)
- Add FONTBAKERY-REPORT.md tracking remaining onboarding gaps

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Comment thread FONTBAKERY-REPORT.md

This file summarises the current state of `fontbakery check-googlefonts` against
the gftools-built artefacts. The detailed HTML report lives in
[FONTBAKERY-REPORT.html](FONTBAKERY-REPORT.html).
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't have this file in the repo and even add it to .gitignore

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, we should regenerate. got it

Comment thread README.md
```sh
pip install -r requirements.txt
cd sources
gftools builder config.yaml
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we commit this file or is it local and should be mentioned in the .gitignore?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants