Monospace Font Block Character Test

✨ UPDATE: Site now uses Monaspace Xenon web font (no fallbacks)

This site now loads Monaspace Xenon as a web font for all code/monospace text. Every device should render the exact same font with consistent character widths, regardless of what fonts are installed locally.

This page tests whether the (FULL BLOCK U+2588) character renders at the same width as regular letters. If the blocks extend further than the letters below them, there’s a width mismatch.

Each section shows 10 block characters on one line and 10 regular letters on the next. In a true monospace font with consistent glyph widths, both lines should be exactly the same length.

Expected result: All tests below should now show blocks matching letter width on ALL devices (PC, mobile, tablet) because everyone gets the same Monaspace Xenon web font.

Current font: 'Monaspace Xenon' (loaded via @font-face, 287KB woff2 variable font)


Inline code style (same as backticks in text)

monospace
█████████

This uses the inline <code> element styling, which should match what you see when text is wrapped in backticks like monospace.

MMMMMMMMMM
██████████
          

Site Default: var(--codeFont)

Uses the CSS variable from the site theme: SFMono-Regular, SF Mono, Menlo, monospace

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

SFMono-Regular

Apple’s San Francisco Mono (macOS/iOS).

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

SF Mono

Apple’s San Francisco Mono (alternate name).

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Menlo

macOS default monospace font.

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Generic monospace keyword

The CSS monospace keyword - what it resolves to depends on your device/browser.

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Common fallback fonts (NOT in site chain, but what monospace resolves to)

These fonts are not explicitly in the site’s font chain, but they’re what the generic monospace keyword resolves to on different devices.

Roboto Mono (Android default)

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Droid Sans Mono (older Android)

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Consolas (Windows default)

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Courier New (cross-platform fallback)

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Liberation Mono (Linux common)

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

DejaVu Sans Mono (Linux common)

██████████
MMMMMMMMMM
██████████
aaaaaaaaaa
██████████
0000000000

Word-length comparison

Testing multi-word patterns like the actual game uses:

█████ ████ ████████
Hello from Proteins
████████████ ████ ███████
serine/threonine kinase activity

How to interpret results

  • Lines are the same length: The character has the same width as letters in this font. ✅
  • Blocks extend further right: The character is WIDER than letters. This causes the reflow bug on hint reveal. ❌
  • Blocks are shorter: The character is NARROWER than letters. This would also cause reflow. ❌

If you see width mismatches on your device, please report which font section shows the issue and what device/browser you’re using.