Skip to main content

Typography

The project uses two font families: Inter for all UI and body text, and Iosevka for monospaced content. Both are open source under the SIL Open Font License 1.1.

Inter

Inter is a typeface designed specifically for computer screens. It features tall x-height, clean geometry, and excellent readability at all sizes. The variable font version is used, providing all weights from a single file.

  • License: SIL Open Font License 1.1
  • Usage: Headings, body text, UI elements, navigation
  • Weights: 300 (Light) through 800 (Extrabold)
WeightNameUsage
400RegularBody text, paragraphs
500MediumSubtle emphasis, labels
600SemiboldSubheadings, navigation items
700BoldHeadings, strong emphasis
800ExtraboldHero titles, primary headings

Iosevka

Iosevka is a narrow, monospaced typeface designed for programming. Its compact width allows more content per line without sacrificing readability.

  • License: SIL Open Font License 1.1
  • Usage: Code blocks, inline code, terminal output, technical identifiers
  • Weights: 400 (Regular), 700 (Bold)

Inter — Headings

H1 — The Ideal desktop

H2 — Data-centric design

H3 — Compositor architecture

H4 — Configuration guide

H5 — Plugin system

Inter — Body

The Ideal desktop environment puts your data first. Instead of switching between applications, you work directly with information. Files, notes, and tasks are organized semantically, not by which app created them.

Inter — Weights

Light 300 — The quick brown fox jumps over the lazy dog

Regular 400 — The quick brown fox jumps over the lazy dog

Medium 500 — The quick brown fox jumps over the lazy dog

Semibold 600 — The quick brown fox jumps over the lazy dog

Bold 700 — The quick brown fox jumps over the lazy dog

Extrabold 800 — The quick brown fox jumps over the lazy dog

Iosevka — Code

Inline: compositor.enable(wayland)

# Iosevka in code blocks
fn main() {
    let config = Config::load("~/.config/ideal");
    let compositor = Compositor::new(&config);
    compositor.run();
}

Usage guidelines

  • Use Inter for all non-code content. Do not mix other sans-serif fonts.
  • Use Iosevka exclusively for code, commands, file paths, and technical identifiers.
  • Prefer Regular (400) for body text. Use heavier weights sparingly for emphasis and hierarchy.
  • Avoid weights below 400 for body text — they may be hard to read on some screens.