Design and interface · Edition No. 41 · 5 Oct 2026

googlefonts/gftools

The command-line tools Google's font team uses to check, fix and package font families.

← Design and interfaceRead the whole edition →
10

googlefonts/gftools

💎 hidden gem

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.

Stars287
LicenceApache-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.
Latestv0.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.
Good
  • One pip command 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.
Watch for
  • 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 want pkg-config installed 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.
Similar repositories
Install
# 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]'
Screenshots
googlefonts/gftools: GitHub preview card

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.