whatisgithub

What is font-harness?

revfactory/font-harness — explained in plain English

Analysis updated 2026-05-18

58HTMLAudience · designerComplexity · 3/5LicenseSetup · easy

In one sentence

An experimental Korean font that builds all 11,172 Hangul characters from just three basic shapes: circle, horizontal bar, and vertical bar.

Mindmap

mindmap
  root((Cheonjiin))
    What it does
      Experimental Hangul font
      Three shape design system
      Covers 11172 characters
    Tech stack
      Python
      SVG
      TTF build pipeline
    Use cases
      Geometric font for design
      Study Hangul structure
      Extend jamo components
    Audience
      Type designers
      Font engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Install a geometric experimental Hangul font for a design project

USE CASE 2

Study how a strict three-shape design system builds a full writing system

USE CASE 3

Regenerate or extend the font by editing the 67 component definitions

USE CASE 4

Use the composition engine to generate custom syllable sets as SVG

What is it built with?

PythonSVGTTFClaude Code

How does it compare?

revfactory/font-harnessliangdabiao/weekend-city-tripeltohamy932/ni-labview-studio-tools
Stars585857
LanguageHTMLHTMLHTML
Setup difficultyeasymoderatehard
Complexity3/53/54/5
Audiencedesignergeneralgeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Installing the finished font is a drag-and-drop, building from source requires Python.

Free to use, modify, and redistribute, including commercially, but modified versions cannot use the name Cheonjiin.

So what is it?

Cheonjiin is an experimental Korean (Hangul) font that pushes the original design principles behind Hunminjeongeum, the historical document that introduced the Korean writing system, to an extreme. The idea behind the font is that every one of the 11,172 possible Hangul syllable blocks, both vowels and consonants, can be built from just three basic shapes: a circle representing sky, a horizontal bar representing earth, and a vertical bar representing people. No curved strokes and no diagonal strokes appear anywhere in the font. To install it, a user downloads the finished font file, a .ttf covering all 11,172 characters, and installs it like any other system font, for example through the macOS font manager. The design rules are strict and geometric. Every letter shape is built only from a solid circle, a horizontal bar, and a vertical bar. Vowel dots are solid circles of a fixed size, smaller when a final consonant is present, the circle-based consonants use a fixed ring width, bar thickness is constant, and every coordinate snaps to a shared grid. Diagonal strokes in certain consonants are redrawn as right-angle shapes instead. Rather than drawing each of the thousands of syllables by hand, the font is generated by a system: 67 defined letter components are combined by a composition engine. Scripts convert those component definitions into SVG outlines for whole syllables, or for the full character set at once, and a separate build step compiles the resulting SVGs into a TTF font file. Because each letter component is defined once, fixing a single component automatically updates every syllable that uses it. The font itself was built using a multi-agent Claude Code setup, with separate agents handling roles like structural analysis, concept design, letter design for different syllable positions, composition engineering, specimen creation, font engineering, and quality review, organized through a set of custom skills. The font is released under the SIL Open Font License 1.1, a free license that allows use, modification, and redistribution, including commercial use. Modified versions must also use the OFL license, but they cannot use the name Cheonjiin, since that name is reserved.

Copy-paste prompts

Prompt 1
Help me install the Cheonjiin TTF font on macOS and set it up in a design tool.
Prompt 2
Explain how the 67 jamo component definitions combine to generate all 11,172 Hangul syllables.
Prompt 3
Walk me through running compose.py to generate SVGs for a specific set of Korean text.
Prompt 4
Show me how the SVG to TTF build step works so I can compile my own font version.

Frequently asked questions

What is font-harness?

An experimental Korean font that builds all 11,172 Hangul characters from just three basic shapes: circle, horizontal bar, and vertical bar.

What language is font-harness written in?

Mainly HTML. The stack also includes Python, SVG, TTF.

What license does font-harness use?

Free to use, modify, and redistribute, including commercially, but modified versions cannot use the name Cheonjiin.

How hard is font-harness to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is font-harness for?

Mainly designer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.