← Work
Self-initiated2024

Generative Type System

A parametric typeface that evolves in real time based on environmental noise and user interaction — letterforms as living systems.

TypographyWebGLGenerative ArtCreative Code

The Premise

Typography is static by convention, not necessity. Fixed letterforms are a printing constraint we inherited and never questioned. This project asks: what if a typeface breathed?

The generative type system treats each glyph as a parameterized equation. Weight, width, contrast, and curvature are driven by a simplex noise field seeded by time and user input. The result is a typeface that is recognizably itself — consistent enough to read, alive enough to feel.

Process

The system was built in three layers:

1. Glyph construction in code. Each letterform is defined as a series of control points. A cubic Bézier renderer interprets these in real time, allowing any parameter to change without redrawing from a raster source.

2. The noise field. A 3D simplex noise function (axes: x position, y position, time) generates values between −1 and 1 for each glyph. These drive the parameters — noise at 0.8 makes a letterform heavy and wide; at −0.3 it becomes light and compressed.

3. Interaction layer. Mouse position and scroll velocity feed into the noise seed, creating the sensation that the type is aware of the reader.

Outcome

The system was released as an open-source WebGL experiment. It was featured in three design publications and used by two studios as a reference implementation for their own generative identity systems.

This project confirmed something I believe deeply: the future of typography is not variable fonts — it is procedural letterforms. The technology exists. The bottleneck is cultural.