A typographic experiment

By Roni Kaufman

Flexflex is a typeface that responds to spatial requirements rather than imposing them. Built on a modular system, each letter can fit inside any given rectangular container and transforms continuously if its ratio changes. In theory, it's infinitely flexible. The design follows some additional constraints: - keep it minimal, maximize symmetry and mathematical alignment,
- only use non-diagonal straight lines and circular arcs,
- monolined (consistent thickness) and no disconnections,
- no descenders or ascenders, nothing extends beyond the container,
- each letter is independent, there is no kerning.

The characters

Only the 26 letters of the Latin alphabet have been designed and only in uppercase. More characters might be added in the future. Click here to see them full screen and, if it's possible on your device, change the browser window size to see how they stretch.

Implemetation

There is no downloadable font file. Flexflex is implemented as a JavaScript library, with a single function that takes a few parameters and can: - either append a path element representing the letter as the last child of an SVG element,
- or draw the letter on a canvas element. There are no dependencies. The full documentation is in the README file.

Parametric variations

The end caps and corners of letters can be either square or round. Oblique type can be created by slanting the letters, as much as one wants. Thickness can also vary.

About

All the source code is available on GitHub, under the CC BY-NC-SA 4.0 license. While working on Flexflex, I came across similar works: Vera van de Seyp's Cocotype, David Jonathan Ross's Fit and Toby Bennett's dynamically structured type. Thank you to Theo van Doesburg, Herbert Bayer, Jurriaan Schrofer, Wim Crouwel, Donald Knuth, Paula Scher, Just van Rossum and Erik van Blokland for the inspiration. Special thanks to Ellen Lupton for her brilliant books.