Themes — Light/Dark Mode and Document Typography Themes

Rho has two layers of "theme," and they govern different things: the app theme (light / dark) dresses the application shell; document themes dress a single document — its typefaces, palette, and page rhythm. The first is your preference. The second is the author's voice: a document with theme: in its frontmatter looks the same in anyone's Rho.


App theme: Light / Dark

How to switch Where
Ctrl+Shift+T One keystroke, any time
Settings › Appearance The Light / Dark segmented control
Command Palette Ctrl+Shift+P, search theme

Your choice is remembered across launches. The switch is instant and global — including Mermaid diagrams and Vega charts inside documents, which re-render to match, so you never get white-background charts stranded on a dark page.


Font size

Not strictly a theme, but it's the same question — "is this comfortable to read?":

  • Range 12–28px, steps of 2, default 16.
  • Ctrl+= bigger / Ctrl+- smaller / Ctrl+0 back to default.
  • Or move your mouse toward the document's top-right corner and the floating − / + control fades in.

Font size scales the document body only; the app chrome (side bars, menus) stays put.


Document themes: one frontmatter line, a whole new character

Add one line to the YAML frontmatter at the top of a document:

---
theme: kami-parchment
---

The whole document instantly wears a complete typographic design — typefaces, palette, spacing, rules, the works. Six ship built in:

Theme Character
kami-parchment Ink on warm paper: a single serif carrying every level, ink-blue accents — reads like a printed little magazine
magazine-poster Magazine poster: big headlines, bold contrast, layout tension
eng-runbook Engineering runbook: calm, monospaced, information density first
data-report Data report: a chart-friendly, formal report voice
web-proto-editorial Editorial prototype: modern web-magazine typesetting
animal-crossing-cozy Cozy and rounded: soft corners and an easygoing palette

A few things worth knowing:

  • The theme travels with the document, not with you. theme: is part of the document's frontmatter — share the file, switch machines, the look holds.
  • It styles the document body only; the app shell (side bars, tabs, settings) is untouched.
  • Fonts work offline: theme typefaces ship inside the app, never fetched from the network — a Rho document renders identically with the cable unplugged.
  • Typos can't break anything: an unknown theme: value is quietly ignored and the document falls back to default styling. In any other Markdown reader it's just one harmless frontmatter line.

How themes work (and custom themes)

Under the hood, each document theme is a preset of CSS custom properties — a full set of design variables for background, text, accent, font stacks, radius, column width — applied to the document rendering area. That's why switching is so clean: the values change, the document's structure doesn't.

Custom themes aren't open yettheme: recognizes only the six built-ins above. The CSS-variable architecture is exactly the door being kept open for them; stay tuned.


While we're here: layout full-width mode

Frontmatter has one more layout-related key:

---
layout: canvas
---

By default a document renders as a centered reading column (about A4 feel); layout: canvas (or freeform) renders it edge to edge — good for wide tables, big charts, and dashboard-like content. theme and layout combine freely.


Quick reference

To do How
Switch light / dark Ctrl+Shift+T, or Settings › Appearance
Adjust font size Ctrl+= / Ctrl+- / Ctrl+0, or the top-right floating control
Give a document a typography theme theme: <name> in frontmatter (6 built-ins)
Full-width layout layout: canvas in frontmatter
Edit frontmatter Edit mode → slide the bottom-right Raw switch to source mode
Open in Rho MD →