glyphsLib
A bridge from Glyphs source files (.glyphs) to UFOs
Decision gist · record as of 2026-08-14
Yes. glyphsLib is actively maintained, has no known vulnerabilities, installs with low friction, and is essential for anyone bridging Glyphs and UFO workflows. The Apache 2.0 license is permissive. Install it if you work with Glyphs files or need to convert between Glyphs and UFO formats; it is the standard tool for this task in the open-source font tooling ecosystem.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Low friction install with three stable runtime dependencies.
- Active maintenance with a release 13 days old and commits as recent as 2026-08-01; the project is not archived and has 198 repository stars.
License · maintenance · safety
Apache Software License 2.0 (permissive) — Apache Software License 2.0 is permissive, allowing commercial and private use with minimal restrictions beyond attribution and liability disclaimers.
last release 2026-08-01 (13 days) · last repo commit 2026-08-01 · 198 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 108,823 downloads/mo, #12,536 on PyPI
Alternatives
Verify before relying
pip install glyphsLib
import glyphsLib
# Convert Glyphs file to UFOs and Designspace
ufos, designspace_path = glyphsLib.build_masters("MyFont.glyphs", "master_ufos")
# Or load UFOs without writing
ufos = glyphsLib.load_to_ufos("MyFont.glyphs")- How much of the Glyphs.app Python Scripting API is currently implemented in glyphsLib.classes.
- Whether round-trip conversions (Glyphs→UFO→Glyphs) preserve all metadata without manual intervention.
- Performance characteristics when handling large multi-master font files.
What it is and what it does
glyphsLib is a Python library that translates between Glyphs.app source files (.glyphs) and the UFO (Unified Font Object) ecosystem, including Designspace files. It acts as a bridge for font designers and developers who work across both formats, enabling programmatic access to Glyphs data structures and conversion workflows. The library provides three main entry points: building UFOs and Designspace files from a Glyphs source, loading UFO objects in memory without writing to disk, and reading/writing Glyphs data as Python objects via the GSFont class.
The package depends on ufoLib2, fonttools, and openstep-plist to handle UFO serialization, Designspace document management, and Glyphs property list parsing. It supports round-trip conversion with options to minimize diffs during back-and-forth editing, making it suitable for workflows where font sources are maintained in both Glyphs and UFO formats. Command-line scripts (glyphs2ufo and ufo2glyphs) are included for direct file conversion without writing Python code.
Use it for
- Convert a Glyphs source file to UFO masters and a Designspace file for use with fontmake or other UFO-based font build tools.
- Load Glyphs data programmatically to inspect or modify font metadata, kerning, or glyph properties without opening Glyphs.app.
- Round-trip a font between Glyphs and UFO formats while preserving as much metadata as possible for collaborative workflows.
- Combine multiple UFO files into a single Glyphs source file when migrating from UFO-only design to Glyphs-based production.
- Automate font source conversions in build pipelines or CI/CD workflows using the command-line scripts or Python API.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
glyphsLib is actively maintained, has no known vulnerabilities, installs with low friction, and is essential for anyone bridging Glyphs and UFO workflows. The Apache 2.0 license is permissive. Install it if you work with Glyphs files or need to convert between Glyphs and UFO formats; it is the standard tool for this task in the open-source font tooling ecosystem.
Install
glyphslib on PyPI
Before you install
Low friction install with three stable runtime dependencies. Active maintenance with a release 13 days old and commits as recent as 2026-08-01; the project is not archived and has 198 repository stars.
Requires Python 3.10 or later.
License in practice
Apache Software License 2.0 is permissive, allowing commercial and private use with minimal restrictions beyond attribution and liability disclaimers.
Quickstart
pip install glyphsLib
import glyphsLib
# Convert Glyphs file to UFOs and Designspace
ufos, designspace_path = glyphsLib.build_masters("MyFont.glyphs", "master_ufos")
# Or load UFOs without writing
ufos = glyphsLib.load_to_ufos("MyFont.glyphs")
Verify before relying
- How much of the Glyphs.app Python Scripting API is currently implemented in glyphsLib.classes.
- Whether round-trip conversions (Glyphs→UFO→Glyphs) preserve all metadata without manual intervention.
- Performance characteristics when handling large multi-master font files.
Package facts
| License | Apache Software License 2.0 permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagesufoLib2fonttoolsopenstep-plist |
| Maintenance | Actively maintained 13 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 108,823 / month, #12,536 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: ConsoleEnvironment :: Other EnvironmentIntended Audience :: DevelopersIntended Audience :: End Users/DesktopLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyTopic :: Multimedia :: GraphicsTopic :: Multimedia :: Graphics :: Editors :: Vector-BasedTopic :: Multimedia :: Graphics :: Graphics Conversion |
Evidence: glyphslib-6.14.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “glyphs to ufo conversion”
- glyphsLibConverts Glyphs source files (.glyphs) to UFO and Designspace…
- ufoLib2ufoLib2 provides a lightweight, programmatic interface to read and…
- defconDefcon provides lightweight, UFO-based objects for font editing…
Give your agent the search over MCP, or paste the wish link into any chat.
More Graphics packages
Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.
Install it if you need to work with images in Python—it is the de facto standard for this task.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.
PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.
The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.
Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.
Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.
See also esphome-glyphsets · ufo2ft · defcon · ufoLib2 · cu2qu · art · uharfbuzz · cffsubr · pyfiglet