287 stars · Apache-2.0 at main/LICENSE — LICENSE.txt and LICENSE.md both 404 — stock text, AND THE COPYRIGHT HOLDER IS LEFT AS THE TEMPLATE: 'Copyright {yyyy} {name of copyright owner}' is never filled in, so Google is not named anywhere in it. · v0.10.0, '07 Sep 18:27' with no year, settled as 7 September 2026 TWICE — by the PyPI project page and by the ungh releases record. · Track this in Scout
The command-line tools Google's font team uses to check, fix and package font families.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A collection of small Python programs for working on font families: checking them against a long list of rules, fixing common faults, building web versions, and packaging a family in the shape the Google Fonts library expects. It is a toolbox, not one tool.
What it is good for. Anyone making or publishing a typeface, and anyone who has inherited a font file and needs to know whether it is sound. The checks encode years of other people's mistakes, which is worth more than the code. At 287 stars it is the quietest project in this edition and the most specialised.
- One
pipcommand installs it, with no compiler and no system libraries for the basic tools. - Code was pushed on 29 September 2026, and version 0.10.0 landed on 7 September 2026, confirmed through Python's own package index.
- Nine years old, and it is what actually runs against the fonts in a library almost every website uses.
- It is an internal toolbox rather than a product. Sub-commands are documented unevenly, and some of the rules it enforces — particular metadata files, particular naming — only mean anything inside the Google Fonts library.
- Two of the tools need more than
pip. The checking extras wantpkg-configinstalled through Homebrew first, the packager needs Git 2.5 or newer, and two scripts will not run at all until you register a Google Fonts API key and put it in a configuration file by hand. - Still before version 1.0 after nine years, with odd historical version numbers, 131 open issues and 25 open pull requests. Its Apache-2.0 licence file leaves the copyright holder as the unfilled template, so Google is not named in it anywhere.
- fonttools/fonttools
The library underneath this and almost every other font tool, for reading and writing font files directly; it is what most people actually want.
Track this in Scout - googlefonts/fontmake
Compiles a font source file into a finished font, which is the step before checking it.
Track this in Scout
fonttools/fontbakeryThe quality checklist on its own, without the packaging tools; covered as entry #5 of Edition 40, and its last code landed on 4 November 2025.
Track this in Scout
# Prerequisite: Python 3.10 or newer. python3 -m venv venv source venv/bin/activate pip install gftools gftools --help # For the font-checking extras, install pkg-config first: brew install pkg-config pip install 'gftools[qa]'
