$ show subframe7536/maple-font
Maple Mono is an open-source monospace programming font with an extensive build system. The repository is primarily a font engineering toolchain: it takes Glyphs source files, generates variable and static TTF/OTF/WOFF2 fonts, auto-hints them, patches in Nerd Font icons, merges Chinese/Japanese base fonts, and produces dozens of variants (hinted/unhinted, ligature/no-ligature, narrow/slim, etc.). The build is orchestrated by Python scripts (`build.py`, `task.py`) and supports customization via CLI flags or a `config.json` file. A web playground service (`in_browser.py`) allows users to build custom fonts in-browser with selected OpenType features. The codebase is not a running service but a build toolchain with a strong focus on OpenType feature engineeringβfeaturing a custom AST-based DSL for programmatically generating ligature, character variant, and stylistic set feature files. The repository is well-maintained with active GitHub Actions workflows, though the v7 branch is explicitly a frozen snapshot of the current stable release (development continues on the `variable` branch).
The LLM identified 2 files worth highlighting for reuse:
A self-contained AST (Abstract Syntax Tree) for building OpenType feature files (.fea). Defines classes like Clazz, Lookup, Feature, CharacterVariant, and StylisticSet that allow programmatic construction of font features. The module handles formatting, rule ordering, and concatenation of feature tables. It is fully decoupled from the rest of the repository and could be extracted into a standalone library for any font project that needs to generate .fea files from Python.
Implements a state-machine pattern for generating infinite chaining ligatures (e.g., repeated hyphens, equal signs, tildes). Uses three glyph states (start, middle, end) and produces contextual substitution rules that handle arbitrarily long sequences. The logic is isolated and parameterized, making it reusable for any font project that wants to add continuous-symbol ligatures without manual rule explosion.