fontbakery
A font quality assurance tool for everyone
What it is and what it does
Font Bakery is a terminal-based quality assurance tool for font projects. It runs a suite of automated checks against OpenType font files and project metadata (such as Google Fonts METADATA.pb files) to catch quality issues early. The tool was originally built to accelerate onboarding for Google Fonts and has since become a community project with contributors from major foundries and type organizations.
You typically use Font Bakery as a command-line utility in your font development workflow, or integrate it into continuous integration services like GitHub Actions to run checks on each commit. It can also be extended with custom checks written in Python for project-specific validation needs. The package depends on a substantial set of font-handling libraries including fontTools, uharfbuzz, freetype-py, and others to perform its analysis.
Use it for:
- Validate OpenType font files for spec compliance and common quality issues before distribution.
- Integrate font checking into GitHub Actions or CI/CD pipelines to catch regressions on each commit.
- Check Google Fonts METADATA.pb project files for correctness and consistency.
- Write custom font validation checks tailored to a foundry's internal quality standards.
- Audit existing font projects for quality issues across multiple files in batch.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Font Bakery is a command-line tool that checks the quality of font projects by running automated checks against OpenType binary files and font project metadata.
Yes, if you are developing fonts or managing font projects. Font Bakery is a mature tool with no known vulnerabilities and low install friction. The aging maintenance status (316 days since last release) is offset by its long history and continued use by professional foundries. Install it if font quality assurance is part of your workflow.
Install
fontbakery on PyPI
pip
pip install fontbakeryuv
uv add fontbakerypoetry
poetry add fontbakeryInstalling fontbakery
Before you install
Low install friction with a pure-Python wheel distribution. Maintenance status is aging—the last release was 316 days ago—though the package has been actively maintained by a commissioned maintainer since 2018.
Quickstart
pip install fontbakery
fontbakery check-googlefonts path/to/font.ttf
Requires Python 3.9 or later; 21 runtime dependencies including fontTools, uharfbuzz, and freetype-py may require system libraries on some platforms.
Verify before relying
- Whether the 21 runtime dependencies are all available on all target platforms without compilation issues.
- Current state of the project repository and whether the aging maintenance status reflects a planned cadence or reduced activity.
- License details: the description states Apache 2.0 availability, but meta.license_spdx and meta.license_raw are both null in the fact sheet.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 21 — beziers, cmarkgfm, defcon, dehinter, fontTools, freetype-py, Jinja2, munkres, opentypespec, opentype-sanitizer, packaging, pip-api, PyYAML, requests, rich, toml, typing_extensions, ufolint, ufo2ft, uharfbuzz, vharfbuzz |
| Maintenance | aging — 316 days since the last release |
| First released | |
| Downloads | 75,491/month — #14,707 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: fontbakery-1.1.0-py3-none-any.whl
Tags
More Quality Assurance packages
Coverage.py measures which lines of Python code…
permissive · top 1,000 on PyPI
ruffRuff is a Python linter and code formatter…
permissive · top 1,000 on PyPI
pexpectPexpect spawns and controls interactive console…
permissive · top 1,000 on PyPI
blackBlack reformats Python source code to a…
permissive · top 1,000 on PyPI
pytest-xdistpytest-xdist distributes pytest tests across…
permissive · top 1,000 on PyPI
cfn-lintValidates AWS CloudFormation templates in YAML…
permissive · top 1,000 on PyPI
fonttoolsfonttools manipulates font files in multiple…
permissive · top 1,000 on PyPI
ufo2ftCompiles OpenType font binaries (OTF and TTF)…
permissive · top 15,000 on PyPI
pyfigletRenders ASCII text as ASCII art using a variety…
permissive · top 5,000 on PyPI
mplfontsManages Matplotlib fonts and solves CJK…
permissive · top 15,000 on PyPI
rendercv-fontsProvides a collection of fonts packaged for use…
permissive · top 15,000 on PyPI
weblate-fontsProvides a curated collection of fonts packaged…
unclear · top 15,000 on PyPI
QtAwesomeQtAwesome provides iconic fonts—Font Awesome,…
permissive · top 15,000 on PyPI
cffsubrSubroutinizes CFF (Compact Font Format) font…
permissive · top 15,000 on PyPI
model-bakeryModel Bakery creates test fixtures for Django…
permissive · top 5,000 on PyPI
artConverts text and generates one-line ASCII art…
permissive · top 5,000 on PyPI