Monospace · variable · wght 100–900 · FRAG 0–100
machine-made Weft
Proven for machines
A monospace set on a 12-unit grid by a generator called the loom. One axis sets the weight. A second axis, FRAG, takes it from clean strokes to broken pieces.
machine-made/type · version 0.1
Made by machines. Proven for machines.
Four typeface families, built and checked by code. Free to use under the SIL Open Font License.
Monospace · variable · wght 100–900 · FRAG 0–100
Proven for machines
A monospace set on a 12-unit grid by a generator called the loom. One axis sets the weight. A second axis, FRAG, takes it from clean strokes to broken pieces.
Sans · variable · wght 200–800 · upright and italic
Every result is checked by another machine.
A reading sans based on Plus Jakarta Sans. Straight forms are the default, and the sharp forms are one stylistic set away, so it sits next to Weft.
Display grotesk · variable · wght 100–900 · wdth 70–140
A Swiss display grotesk for posters, headlines and big figures. Every letter is built from four parts and level cuts. A width axis runs from Compressed to Extended.
Modern serif · Regular, Italic, Bold, Bold Italic · Display
Drawn by a pen, for papers and maths.
A Modern serif with vertical stress. Every letter is a few centre-lines swept by one level pen. Full basic Greek, maths symbols, small capitals and old-style figures.
Together
Sans · 18 px · 400
Run the loom and it writes every outline from a table of strokes. Fontmake compiles the result, and the checks run on every pull request. A person reviews the proof by eye before a release.
Weft · 15 px · 400
python -m pytest -q
scripts/build.sh
scripts/check.sh fontspector
python tools/proof.py
Version 0.1