Choose a document direction, supply an accent, and render a real PDF with the same explicit font-registration step used by Rendro's shipped recipes.
Start with a Swiss invoice
This Invoice/Swiss/#2C6BED/light path is the canonical first success. It uses
the formatter-owned source shared by the configurator and Livebook, so the
selection you copy stays aligned with Rendro's supported preset syntax.
# rendro-theme-snippet:start
preset = :swiss
theme =
Rendro.Theme.preset(preset, accent: {44, 107, 237}, mode: :light)
document =
invoice
|> Rendro.Recipes.Invoice.document(theme: theme)
|> Rendro.Theme.Presets.register_fonts(preset)
# rendro-theme-snippet:endEach preset is a strong starting point: choose a style, supply your accent, and review the rendered document for your content. Presets are not design-quality, accessibility, PDF/UA, WCAG, or print-safety guarantees.
Rendro.render/2 can now render document deterministically. The explicit
register_fonts/2 call keeps the document responsible for the curated fonts it
embeds; it is not a global registration step.
Choose a direction
Rendro provides six strict preset constructors. They are starting directions, not a ranking or an approval of a document's final visual quality.
| Preset | Structural direction | Font-role character | Density / geometry | Business-document fit |
|---|---|---|---|---|
| Swiss | compact grid with direct hierarchy | grotesque headings with practical body copy | dense, aligned, and economical | product and SaaS invoices |
| Humanist | open service-document structure | humanist sans roles with a readable rhythm | relaxed spacing with familiar forms | service summaries and client records |
| Editorial | narrative report frame | text-serif emphasis with restrained supporting sans | measured columns and reading-led pacing | reports and correspondence |
| Corporate Classic | formal record layout | serif-and-sans balance for established institutions | steady proportions and conventional grouping | traditional business records |
| Minimal Mono | operational reference grid | restrained monospace roles | regular columns and deliberate geometry | operational and technical artifacts |
| Brutalist | direct, high-contrast frame | geometric roles with blunt emphasis | assertive blocks and visible structure | deliberate internal artifacts |
Continue by job
- Browse bounded previews and copy a selection in the static configurator. It is the browse → pick → copy route, not a second rendering tutorial. A catalog preview is bounded evidence: it is not complete-document or universal-viewer proof, and a representative-accent preview is disclosed as representative rather than your requested accent.
- Generate an application-owned module with
mix rendro.gen.theme, commit it, then use--checkto keep the committed source from drifting. - Render, inspect, and download an invoice in Livebook to execute one real document and inspect its bytes.
- See Theming for manual tokens and
from_brand/2, or Branding for caller-owned logos and fonts. - Read API Stability and Support Boundaries before turning a supported capability into an operational or compliance assumption.
Read the evidence state
The configurator describes a preview as exact, representative-accent, or unavailable. Copied code always names the requested selection. Dark output retains the visible boundary: Screen-oriented; not a print, accessibility, PDF/UA, or WCAG claim. Catalog quality labels are limited to Scored — passes current rubric, Scored — needs work, and Not yet scored. They are dispositions, not approval or certification.
Deterministic bytes, bounded catalog previews, human quality dispositions, and documentation claims are separate evidence levels. A valid snippet vocabulary or a page-one raster does not establish broad visual, accessibility, PDF/UA, WCAG, print-safety, or universal-viewer guarantees.