Style
An index of the design elements used in this site.
This page shows every element involved in the design of the site.
It is generated when the site is built so that it's always up to date.
Font
Atkinson Hyperlegible Next, from the Braille Institute (opens in a new tab).
Choosing a font is an impossible task? I don't know how you designers do it.
I tried a handful. Each time once I saw it on the site I hated it.
Eventually I settled on this one because I didn't hate it.
Actually, it feels quite nice.
Il1 O0 rn m 5S 8B
Extra light 200 Light 300 Regular 400 Medium 500 Semibold 600 Bold 700 Extra bold 800
Italics have their own drawing rather than a slanted roman.
Code is set in Atkinson Hyperlegible Mono: Il1 O0 rn m.
It has no box-drawing characters, so those come from JetBrains Mono, scaled to the same grid: ┌─┬─┐.
| Family | Weights | File |
|---|---|---|
| Atkinson Hyperlegible Next | 200-800 | AtkinsonHyperlegibleNext-Roman.woff2 |
| Atkinson Hyperlegible Next, italic | 200-800 | AtkinsonHyperlegibleNext-Italic.woff2 |
| Atkinson Hyperlegible Mono | 200-800 | AtkinsonHyperlegibleMono-Roman.woff2 |
| Atkinson Hyperlegible Mono | JetBrainsMono-BoxDrawing.woff2, only U+2500-257F |
Headings
The page title is the only first-level heading.
Every heading links to its own section, and on long outlined pages, like the dotfiles, headings also get an underline that fades in and ends in a leaf.
Third level
Large headings stand out by size.
Fourth level
Smaller headings get more weight to keep their place.
Text
| Looks like | Written as |
|---|---|
| Bold | *Bold* |
| Italic | /Italic/ |
| Underlined | _Underlined_ |
+Struck through+ |
|
code |
~code~ |
verbatim |
=verbatim= |
| C-x C-s | !!C-x C-s!! |
Underlines are drawn as a hypha, the thread a fungus grows through soil, so they aren't mistaken for links.
Key caps are for keys you press.
Links
Internal links
Links to other pages on this site are leaf green, like the About page.
Hovering brightens them.
External links
Links to other sites carry a dandelion seed and open in a new tab, like Org mode (opens in a new tab).
Visited links
A link you've already followed turns autumn brown.
Chrome only counts links followed from this site, except links to this site's own pages, which count however you reached them.
People
People link to their profile page, like Anton Bilbaeno.
Footnotes and references
Notes
A footnote opens in place, beside the text it belongs to. 1
The same notes are also collected at the bottom of the page.
Lists
Unordered lists
- A plain list
- can nest
- as deep as needed
- can nest
- and come back out
Numbered lists
- Numbered lists
- count up
Quotes
A quotation sits against a rule on the left, in italics.
Code
Emacs Lisp(defun site--greet (name)
"Say hello to NAME."
(message "Hello, %s" name))
CSS.underline {
padding-bottom: 0.42em;
}
ExampleAn example block keeps its text exactly as written.
Math
Inline math sits in the line, like .
Display math gets its own line:
Tables
| Kingdom | Example | Spreads by |
|---|---|---|
| Plants | Bamboo | Rhizomes |
| Fungi | Mushroom | Hyphae |
Colors
The palette is a few primitives, mostly derived from the paper and ink colors.
--palette-paper oklch(var(--paper-lightness) var(--paper-chroma) var(--paper-hue)) |
|
--palette-paper-translucent oklch(var(--paper-lightness) var(--paper-chroma) var(--paper-hue) / 94%) |
|
--palette-paper-surface oklch(calc(var(--paper-lightness) - 2.5%) var(--paper-chroma) var(--paper-hue)) |
|
--palette-paper-surface-alt oklch(calc(var(--paper-lightness) - 5.5%) var(--paper-chroma) var(--paper-hue)) |
|
--palette-paper-code-surface #fff |
|
--palette-key-cap-top oklch(96% 0.02 92) |
|
--palette-key-cap oklch(90% 0.03 88) |
|
--palette-key-side oklch(72% 0.035 80) |
|
--palette-key-skirt oklch(60% 0.035 75) |
|
--palette-key-legend oklch(30% 0.01 80) |
|
--palette-paper-border oklch(calc(var(--paper-lightness) - 14%) calc(var(--paper-chroma) - 0.01) var(--paper-hue)) |
|
--palette-paper-border-accent oklch(calc(var(--paper-lightness) - 20%) calc(var(--paper-chroma) - 0.005) var(--paper-hue)) |
|
--palette-ink oklch(var(--ink-lightness) var(--ink-chroma) var(--ink-hue)) |
|
--palette-ink-secondary oklch(calc(var(--ink-lightness) + 7%) calc(var(--ink-chroma) - 0.005) var(--ink-hue)) |
|
--palette-ink-muted oklch(calc(var(--ink-lightness) + 12%) calc(var(--ink-chroma) - 0.008) var(--ink-hue)) |
|
--palette-ink-tertiary oklch(calc(var(--ink-lightness) + 17%) calc(var(--ink-chroma) - 0.011) var(--ink-hue)) |
|
--palette-forest oklch(calc(var(--ink-lightness) + 15%) calc(var(--ink-chroma) + 0.06) calc(var(--ink-hue) - 5)) |
|
--palette-forest-hover oklch(calc(var(--ink-lightness) + 18.5%) calc(var(--ink-chroma) + 0.075) calc(var(--ink-hue) - 5)) |
|
--palette-autumn oklch(43% 0.095 55) |
Components use these semantic names, each pointing at a primitive.
--color-bg var(--palette-paper) |
|
--color-bg-translucent var(--palette-paper-translucent) |
|
--color-text var(--palette-ink) |
|
--color-secondary var(--palette-ink-secondary) |
|
--color-tertiary var(--palette-ink-tertiary) |
|
--color-muted var(--palette-ink-muted) |
|
--color-border var(--palette-paper-border) |
|
--color-border-accent var(--palette-paper-border-accent) |
|
--color-surface var(--palette-paper-surface) |
|
--color-surface-alt var(--palette-paper-surface-alt) |
|
--color-code-surface var(--palette-paper-code-surface) |
|
--color-key-cap-top var(--palette-key-cap-top) |
|
--color-key-cap var(--palette-key-cap) |
|
--color-key-side var(--palette-key-side) |
|
--color-key-skirt var(--palette-key-skirt) |
|
--color-key-legend var(--palette-key-legend) |
|
--color-control-background var(--color-surface) |
|
--color-link var(--palette-forest) |
|
--color-link-hover var(--palette-forest-hover) |
|
--color-link-visited var(--palette-autumn) |
|
--color-backdrop rgb(0 0 0 / 35%) |
References
Notes
Like this one. Click or tap anywhere in it to close it.