I’m not an artistic person, but I like typography. When I see a website with beautiful typesetting paired with a great font, I stop for a moment — because for some reason that I cannot describe, it just feels nice.
Whenever I start a new project that involves picking a font (even something as simple as a word document), I end up spending more time on it than I’d care to admit. However, I recently noticed a pattern when choosing a sans-serif font that is simple, easy to read, and attractive: more often than not, I tend to choose the popular Inter font. It just works.
However, a few things about Inter sometimes make me hesitate and look for an alternative. Its default glyphs for some characters (e.g. uppercase I and lowercase l) can be hard to distinguish, and some of its design choices do not match my personal preferences. Inter is not particularly distinctive either: lots of apps & websites use it, and it is widely recommended (rightfully so) by font recommendation sites and AI tools alike.
I used to load Inter from Google Fonts and call it a day, so I initially didn’t realize that it offers a wide range of OpenType features. These include optional glyphs that solve my concerns. However, not every application supports OpenType features — or at least not all features (looking at you Apple Pages…). Since I almost always use the same features, I decided to create my own variation of Inter, called Interaki, with my preferred glyphs as the defaults. I wrote a script to build the font and set up the repository’s pipeline to build it automatically.
Check out the repository here:
Interaki is a variation of the Inter font, focusing on clarity and distinction. The name combines Inter with Aki, a Japanese name associated with brightness and clarity.
Interaki has the following variations enabled by default:
| Feature | Description | Interaki | Inter |
|---|---|---|---|
cv05 |
Lower-case L with tail |
![]() |
![]() |
cv07 |
Alternate German double s (ß) |
![]() |
![]() |
ss03 |
Round quotes & commas |
![]() |
![]() |
The features are frozen into the fonts, so they are active even in apps without OpenType feature support.
The fonts are built from the official Inter release with the interaki.py
script. It requires Python 3.10 or newer. Recommended usage is within a
virtualenv.
Install the dependencies:
pip install -r requirements.txt
Download an official Inter release zip from the
Inter releases page and unzip it,
e.g. to Inter-4.1/.
Build the fonts:
python interaki.py Inter-4.1
This converts the Inter.ttc, InterVariable.ttf and
InterVariable-Italic.ttf, and writes the Interaki.ttc,
InterakiVariable.ttf and InterakiVariable-Italic.ttf files to the dist
folder. Optionally, the fonts under the extras and web folders can also be
converted by specifying the --extras flag.
| Option | Description |
|---|---|
-e, --extras |
also convert the fonts in the extras and web folders |
-h, --help |
show the help message of the script |
-o, --output |
Output folder; if not specified defaults to: dist |
-v, --verbose |
Show the full log, including every remapped glyph |
--version |
Show the Interaki version |
Interaki has its own MAJOR.MINOR version, independent of the Inter version it
is based on. The version is stored in the fonts with the minor version padded to
three digits, e.g. 1.0 as 1.000. The version string of the fonts also
records the Inter version, e.g. Version 1.000;Inter 4.001;git-9221beed3.
| Interaki version | Based on Inter version | Changes |
|---|---|---|
| 1.0 | 4.1 | Initial release with cv05, cv07 andss03 enabled |
Inter is a trademark of Rasmus Andersson (RSMS).