Ink
Every shell surface
Saola is a Linux desktop environment written in Rust — and the design system that keeps it a single coherent thing. The same tokens style the status bar, the widget gallery, and the website you're looking at right now.
An ivory fill is a control at rest; a terracotta fill is something switched on. Everything else follows from that.
Every shell surface
A control at rest
On, selected, focused, live
The one place the Saola look is defined. Design tokens as pure data (serde + TOML) plus style helpers for iced 0.14 — so the whole desktop stays a single coherent thing instead of a collection of apps that happen to ship together.
The status barA full-width ink shell surface via wlr-layer-shell, targeting niri. Clock, battery, and Wi-Fi modules — every color and size comes from the theme; the code hardcodes none.
The web exportThe same identity, exported for the web: a Tailwind v4 CSS-first token layer with a Preline skin, IBM Plex subsets, and the brand marks. It styles the site you are reading right now.
There is no dark mode and no light mode. Every element knows which surface it sits on — ink or paper — and derives its text, dividers, and hover states from the identity colors by alpha.
An ivory fill is a control at rest; a terracotta fill is something switched on. A charging battery shows terracotta, a discharging one shows ivory. That single rule carries the whole interface.
Every shape is a pill or an over-rounded rectangle, and keyboard focus is always a terracotta ring. Shadows appear only on true overlays.
Sans, Serif, and Mono — at regular and medium only. Serif appears sparingly, mono carries labels and data, and the type scale is shared between the desktop and the web.
The canonical token definitions, the live widget gallery, and the iced style helpers are all open source — dual-licensed Apache-2.0 / MIT.