# Ioskeley Mono ships eight archives because ligatures cannot be switched off everywhere

> A programming typeface built with Iosevka and tuned to resemble a well known commercial font, published under the SIL Open Font Licence and split into eight archives along three axes: editor against terminal against web, ligatures on or off, and patched symbols or not. It is the author's own work and the readme says plainly that it is not the font it resembles.

**ahatem/IoskeleyMono** — Iosevka configuration to mimic the look and feel of Berkeley Mono as closely as possible.

- Repository: https://github.com/ahatem/IoskeleyMono
- Website: https://ahatem.github.io/IoskeleyMono/
- Stars: 2,302 · Forks: 70
- Language: CSS
- License: OFL-1.1
- Published: 2026-09-30 · Updated: 2026-09-30 · Language: en
- Canonical page: https://hysenlabs.com/projects/ahatem-ioskeleymono

## An independent typeface, and a paragraph saying what it is not

The story section is unusually direct for a font project. The author describes wanting a specific commercial programming typeface, not being able to afford it, and looking for a free one that gave him a similar feeling, which is how he found Iosevka and realised he could shape one himself. He then describes the process in concrete terms: more than a hundred builds, installed and uninstalled, zoomed in and out, individual glyphs compared, spacing and proportions adjusted, and the font tried in real editors repeatedly, until it felt as close as he could get. Then the disclaimer, which is the sentence worth remembering.

> It is not Berkeley Mono, nor is it intended to replace the original.

The stated audience is people who admire the genre of carefully designed programming typefaces but cannot justify a commercial licence price, and the readme says so explicitly: students, people early in their careers, or anyone who wants a distinctive coding font without the price standing in the way.

## Eight archives, and two of them exist because an application will not switch ligatures off

The download table has eight rows and the variety is not decoration. The base archive is for editors including the major cross-platform ones, the terminal archive is for a specific list of terminal emulators, and the web archive is for sites needing Latin text, punctuation, arrows, mathematics or box drawing. Two axes then multiply those out. One is patched symbols: a Nerd Font variant exists for each of the three families, for people who want icons in their status line. The other is ligatures, and that is the one with a story behind it: there is a separate no-ligature family for applications that simply cannot turn ligatures off, with one named application called out as the reason. So a user on the no-ligature path downloads a third archive whose only purpose is to be the same font with a feature disabled.

## The two web archives share filenames so switching needs no new font-face rules

There is a tip block about the web pair that says something most font projects do not think about. The larger web archive adds Greek, Cyrillic, long arrows and less common mathematical symbols, so a natural design would have given the two archives different family names. This one does not: both web archives use the same filenames, which means a stylesheet that references the font keeps working when you upgrade to the fuller cut and you do not have to write new rules. The same block explains why the terminal package exists at all: its spacing is adjusted so arrow and box drawing glyphs stay inside their cells, which is a rendering property of the terminal grid rather than of the typeface, and it is the reason arrows appear in both the terminal and web families as a stated requirement.

## Width is the outer folder and rendering is nested inside it

The structure is worth knowing before you install anything.

```text
Normal/
  Hinted/
  Unhinted/
SemiCondensed/
  Hinted/
  Unhinted/
```

The axis that runs through the archive name is width, and rendering is one level deeper, which is the opposite of what most people expect from a font package. There are two widths, a normal one at full relative width and a semi-condensed one at ninety percent for fitting more code on a line. Within each, the rendering is chosen by platform: hinted files for Windows or Linux on a standard density display, unhinted files for macOS or any high density display. The page warns to install only one rendering set per width, because installing both puts duplicate font entries in the system. The patched symbol packages are the exception, since they come in a single rendering without hinted and unhinted copies.

## The dotted zero is the default and the slashed one is the opt-in

Most coding fonts make a slashed zero the default because it is the thing people look for. This one does the opposite, and the glyph list explains why. The distinctive forms are a dotted zero, a single storey g, open six and nine, a two circle eight, parentheses with flat arcs, a raised `underscore`, and square dots on punctuation. Each of those is a departure from the default shapes of the underlying typeface family, which is what gives the font its character. The slashed zero is still available, but it is not a separate family: it is an OpenType feature that applications switch on if they support the table. Ligatures follow the same pattern, present by default in three of the families and available as a separate build when an application insists otherwise.

## Forty styles, produced by a release workflow rather than by hand

The count is given and it is checkable: forty static styles, from ten weights multiplied by two widths, in upright and italic. There are no variable font axes in that number, so the family is a set of discrete files, and the practical consequence is that a user's configuration has to pick a weight explicitly rather than interpolate one. The page also says the packages are produced by the release workflow, which is the mechanism worth understanding: the eight archives are generated rather than maintained, so adding a weight or a third width would flow through the same pipeline. Underneath all of it sits a build plan file in the repository root that defines the glyph forms, widths, slopes, spacing and vertical metrics for the family, which is the part that makes this a shaped typeface rather than a stock configuration.

## The build plan file is named private and it is the most load bearing file in the repository

The top level listing is seven entries, and one of them is a file whose name begins with the word private.

```text
private-build-plans.toml
```

It is committed to the repository and linked from the readme as the definition of the glyph forms, widths, slopes, spacing and vertical metrics used across the family. So the name says one thing and the role says another: the file that determines what the typeface actually looks like is public, and the readme says it is not a stock configuration of the underlying builder. That is worth pausing on, because it is the difference between shipping a tuned preset and shipping a designed font. The remaining entries are the readme, the licence, an assets directory, a workflow directory, a gitignore, and a site directory, which is where the live demo page that the primary language statistic reflects lives.

## Conclusion

Ioskeley Mono fits someone who likes the proportions of a particular commercial programming typeface and wants an open licence, especially on a terminal where compact spacing is the point. Three things to know before you download anything. There are eight archives and choosing wrongly means a missing feature rather than a bug, so pick by ligatures first, then by patched symbols, then by width and rendering. The width folder is the outer one and rendering sits inside it, so installing both renderings for a width puts duplicate entries in your system font list. And it is not the font it resembles: the readme says so plainly, and the glyph forms are defined in a committed build plan rather than copied, so judge it on its own shapes.

## FAQ

### What is Ioskeley Mono?

An independent programming typeface built with Iosevka and tuned for editors, terminals and the web, inspired by the character of a commercial typeface it does not copy. The readme states plainly that it is not that font and is not intended as a replacement, and that it is free to use.

### Which Ioskeley Mono archive should I download for a terminal?

One of the terminal packages, because its spacing keeps arrow and box drawing glyphs inside their cells. Choose the plain terminal archive for the listed emulators, or the terminal archive with patched symbols if you want icons in your prompt.

### How many styles does Ioskeley Mono ship?

Forty static styles, which is ten weights across two widths in upright and italic. There is also a choice of rendering within each width: hinted files for Windows or Linux on a standard density display, unhinted files for macOS or any high density display, with one rendering set per width to avoid duplicate entries.

### Does Ioskeley Mono have ligatures?

Yes, in the standard, terminal and web families, and there is a separate no-ligature family for applications that cannot turn them off, with one named application given as the reason. The slashed zero is also available, but as an opt-in OpenType feature rather than as a separate build.

### What licence is Ioskeley Mono under?

The SIL Open Font Licence, with the licence file at the repository root and the readme stating the font is free to use. The glyph forms are defined in a build plan file committed to the same repository, which the readme links as the specification for the family.

## Sources

- [ahatem/IoskeleyMono on GitHub](https://github.com/ahatem/IoskeleyMono)
- [License: OFL-1.1](https://github.com/ahatem/IoskeleyMono/blob/main/LICENSE)
- [Project website](https://ahatem.github.io/IoskeleyMono/)
- [README](https://github.com/ahatem/IoskeleyMono/blob/main/README.md)
- [Releases](https://github.com/ahatem/IoskeleyMono/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/ahatem-ioskeleymono
