avodado
avodado docs
Guides

Slides & theming

Every doc is a deck — one slide per heading, four layout markers — and six built-in themes that retint everything, SVG included.

Slides — one heading, one slide

Any document renders as a deck with avo slides. Each top-level heading (#/##) starts a new slide and is its title. Everything until the next heading — prose and every block — stays on that slide, so a slide can hold several blocks. (###+ headings stay in the slide body.)

# Why now
A sentence of context, then any blocks under this heading.

```drivers
items:
  - { title: Slow, body: "p95 hit 2.4s.", icon: clock, accent: amber }
```

# The fix
Next heading → next slide. This one stacks two blocks.

A normal Avodado doc (sections under ## headings) already presents cleanly — no special markup needed. To author for slides, write one ## heading per slide and keep each to one idea: a heading plus one strong visual (a diagram, drivers, stats, pyramid, quadrant, timeline) reads better than dense prose.

Layout markers

Vertical alignment is automatic — light slides center; heavier slides top-align. Four heading markers override it (the marker is stripped from the displayed title):

MarkerEffect
## Title {top}Force top alignment
## Title {center}Force centering
## Title {bottom}Force bottom alignment
## Title {split}Consulting layout — prose left, exhibit right

The mechanics

  • The meta block is the cover slide; every non-cover slide gets a footer (deck title · page number).
  • Long sections paginate automatically — each slide has a content budget weighted by block item counts, and a hero-scale block (a big diagram, a many-card grid) splits onto its own slide with the same section title.
  • A doc with no headings at all falls back to one slide per block.
  • avo build — and avo studio's Site mode — emit both views of every doc: the page plus a companion deck at <slug>.slides.html, linked by a Doc | Slides toggle on each page — so a doc is a deck with no extra command. Studio's Present mode shows the current doc's deck without even saving.

Consulting-style decks

For an executive deck, hold every slide to assertion → exhibit → takeaway:

  • Action titles. Each ## is a full-sentence assertion the slide proves ("Checkout latency is costing us conversions"), never a topic label.
  • {split} layout. 1–3 short punchy paragraphs left, exactly one strong block right — the block is the evidence for the title's claim.
  • Open each part with a divider (kicker: PART 2, an assertion as the title) — a clean full-band break slide.
  • The money slide is a bignumber — when one metric carries the whole argument, give it its own {split} slide.
  • Close with takeaways — the 2–4 things the room must remember.

The six built-in themes

Pass a theme to the renderer or set one with avo theme:

ThemeLook
textbookWarm classic (default) — cream paper, deep academic navy + terracotta, serif display & body, large headings
minimalClean modern — white, near-black ink, single blue accent, geometric sans
softModern light — indigo accent, rounded surfaces, sans display
darkFull dark mode
tealTeal + amber highlight
slateSlate sans — Helvetica display, teal highlight

Themes override CSS variables on the .docskin root, so SVG diagrams retint along with the prose — no per-block code changes, no SVG regeneration.

Custom themes

A theme file picks a base theme and overrides any friendly color (primary, accent, ink, paper, …) or font slot (display, body, mono):

avo theme new sunset                 # scaffold a blank theme to fill in
avo theme install ./my.theme.json    # add it globally (~/.avodado/themes)
avo theme use sunset                 # activate for the project
avo theme use sunset --global        # …or as the default for every project

avo theme lists global + project themes together. No rebuild — just re-render. Full command reference: CLI · Config.