Deck Properties
Deck Properties
The frontmatter is the block fenced by === at the very top of your .tac file. It's where you set everything that applies to the whole presentation: its title, who wrote it, what colors it uses, and which theme it follows.
===
key: value
===Each line is a key: value pair. You can leave comments with // or # — they're ignored:
===
title: My Talk
// the brand color
accent: #FF5F1F
===The sections below group the keys by what they do. Don't feel you need all of them — a title alone is a perfectly good frontmatter.
Metadata
These describe your presentation. They feed the automatic cover slide and the footer variables.
| Key | Description |
|---|---|
title | The deck title. Used on the cover slide and available as {title} in the footer. |
subtitle | A subtitle, shown under the title on the cover. |
author | The author. Appears on the cover and as {author} in the footer. |
date | A date. Available as {date} in the footer. |
description | An internal description. Available as {description}. |
===
title: Quantum Physics — An Introduction
subtitle: Lecture 1 — Wave–particle duality
author: Prof. Ana Souza
date: 2025-06-03
===Visual styling
These control the look of the whole deck. Behind the scenes each one sets a CSS custom property (shown in the last column), which means advanced users can also reference them in custom CSS.
| Key | Also accepts | Description | Default |
|---|---|---|---|
accent | accentColor | Accent color — titles, links, colored borders | #FF5F1F |
background | bg | Slide background color or image | #ffffff |
color | textColor | Main body text color | #1c1c28 |
headingColor | titleColor | Color of slide titles | #FF5F1F |
mutedColor | — | Secondary text (subtitles, captions) | #6b7280 |
borderColor | — | Borders and dividers | #e5e7eb |
font | fontSans | Body font family | Atkinson Hyperlegible, sans-serif |
headingFont | titleFont, fontHeading | Font of titles and headings | Momo Trust Display, sans-serif |
fontMono | fontCode | Code font family | JetBrains Mono, monospace |
valign | verticalAlign | Vertical alignment of slide content (top/center/bottom) | center |
theme | — | Built-in preset (default, dark, physics) or a .tt file | default |
class | classes | Extra CSS class(es) on the root | — |
The complete list
These are the everyday ones. Every key Tachyonn accepts — with synonyms, the CSS
variable behind it and its default — is in the
Property Reference.
===
title: My presentation
accent: #38bdf8
background: #0f172a
color: #e2e8f0
headingColor: #7dd3fc
font: Atkinson Hyperlegible, sans-serif
theme: ./my-theme.tt
===Every deck already uses the built-in default theme (light, with the Tachyonn orange). Setting theme: points at your own .tt file to start from a different design.
Tips
If you only want to nudge one or two colors, you don't need a full theme. Set accent and background and you've already changed the feel of the whole deck.
The cover slide
| Key | Default | Description |
|---|---|---|
cover | true | Whether to auto-generate the cover slide from the frontmatter. Set to false to skip it. |
===
title: Internal draft
cover: false
===Footer
The footer has three positions — left, center, and right — each set with its own key:
===
footer.left: {author}
footer.center: {title}
footer.right: {page} / {total}
===Footer values can be text (with variables like {page} and {title}) or an image. The Footer page covers this in full.
Sharing settings across files: tac.config
If your project has a file named tac.config in any parent folder, Tachyonn reads it first and then lets each file's frontmatter override it. This is perfect for giving every deck in a project the same look:
// tac.config — applies to every .tac file in this project
accent: #38bdf8
background: #0f172a
font: Atkinson Hyperlegible, sans-serif
footer.right: {page} / {total}Any single deck can still override these by setting the same key in its own frontmatter. The order of precedence, from weakest to strongest, is:
tac.config → theme → deck frontmatter → per-slide frontmatter