Wavefont
Type with Purpose
Good typography guides attention, improves understanding, and makes communication effortless.
The Anatomy of a Typeface
By FontSide · June 2026
Every typeface is a system of decisions — about stroke contrast, x-height, spacing, and rhythm. The best ones feel invisible: you stop seeing the letters and start hearing the voice behind them. That transparency is the hardest thing to design.
A high x-height opens up the counters and makes small text breathe. Tight tracking pulls a headline together; loose tracking gives a caption room to exhale. None of these choices are accidents — they are arguments about how reading should feel.
Uppercase
Lowercase
Numerals
Symbols
Package Manager
The recommended way to use fonts in modern web projects.
1. Install Package
pnpm add @fontsource-variable/wavefont 2. Import in App
import '@fontsource-variable/wavefont/wght.css'; 3. CSS Usage
body {
font-family: "Wavefont Variable", system-ui;
} Google Fonts CDN
Use Google's CDN to embed the fonts directly via HTML.
HTML <head>
<!-- Please select at least one weight and style --> Fontsource CDN
Skip the build step by adding this directly to your global CSS file.
Global CSS
/* wavefont-latin-wght-normal */
@font-face {
font-family: "Wavefont Variable";
font-style: normal;
font-display: swap;
font-weight: 100 900;
src: url(https://cdn.jsdelivr.net/fontsource/fonts/wavefont:vf@latest/latin-wght-normal.woff2)
format("woff2-variations");
} Background & Story
Wavefont is a variable font with Weight, Round, and Vertical Alignment axes for rendering data like waveforms, spectrums, diagrams, and bars.
Wavefont bars correspond to values from 0 to 100, assigned to different characters:
- 0-9 chars are for simplified manual input with step 10 (bar height = number).
- a-z/A-Z for manual input with step 2, softened at edges a and Z (bar height = number of letter).
- U+0100-017F for 0..127 values with step 1.
letter-spacing CSS property with ch units is useful to adjust distance between bars, 1ch === 1 bar width.
To contribute, see github.com/dy/wavefont
Tags & Moods
Subsets
Install
pnpm add @fontsource-variable/wavefont Designed by
Dmitry Ivanov
Links
License
OFL-1.1