Skip to content

Color & Typography Themes ​

Choose a color palette and font pairing independently. Set both in the first YAML block of slides.md:

yaml
---
theme: scholarly
themeConfig:
  colorTheme: oxford-burgundy
  fontTheme: traditional
---

The default is classic-blue with classic. Names such as Oxford and Cambridge identify presets in this theme; they are not official university templates.

Color Themes ​

colorThemePrimaryAccentLight background
classic-blue#1e3a5f#b8860b#fdfbf7
oxford-burgundy#862633#c5a572#faf8f5
cambridge-green#00543c#d4af37#f8faf7
yale-blue#0f4d92#d4af37#f7f9fc
princeton-orange#e87722#1c1c1c#fffbf5
nordic-blue#2e5266#d4a762#f5f8fa
warm-sepia#5d4037#d4a574#faf6f1
monochrome#2d3748#718096#ffffff
high-contrast#000000#0066cc#ffffff

These are palette values. Content and navigation modes also affect the colors used on a rendered slide. Check figures, links, and text against the final background, including when using high-contrast.

Typography Themes ​

Each preset defines font stacks. The browser uses the first available font, so output may differ between machines. Choosing a preset does not install every font in its stack; ensure any required fonts are available before exporting.

fontThemeBody styleSerif stack starts withSans-serif stack starts with
classicSerifPalatino Linotype, Book Antiqua, PalatinoHelvetica Neue, Helvetica, Arial
modernSans-serifGeorgia, CambriaSource Sans Pro, Segoe UI, Roboto
traditionalSerifGaramond, BaskervilleGill Sans, Optima, Helvetica
contemporarySans-serifCharter, Georgia, CambriaInter, SF Pro Display, Segoe UI
humanistSans-serifCrimson Text, Libre Baskerville, GeorgiaOpen Sans, Noto Sans
technicalSans-serifComputer Modern, Latin ModernIBM Plex Sans, Roboto
elegantSerifCormorant Garamond, EB GaramondMontserrat, Lato
sans-defaultSans-serifGeorgia, CambriaInter, SF Pro Display, system fonts

Combining Themes ​

The CLI also provides four combined presets: classic, oxford, cambridge, and modern.

bash
pnpm exec sch theme preset list
pnpm exec sch theme preset apply oxford --file slides.md

To choose colors and fonts separately, edit themeConfig as shown above or use pnpm exec sch theme apply oxford-burgundy --font traditional --file slides.md.

Surface modes ​

colorTheme selects the palette. contentMode, chromeMode, and sectionMode control the slide body, headers and controls, and section dividers. See Theme Mode and Contrast for combinations and per-slide section overrides.

Custom Colors ​

Place themeColors at the top level, beside themeConfig:

yaml
---
theme: scholarly
themeConfig:
  colorTheme: classic-blue
themeColors:
  primary: '#254b64'
  accent: '#875d20'
---

Supported keys are primary, primaryLight, accent, bgWarm, textPrimary, headerBg, footerLeftBg, footerCenterBg, and footerRightBg. These override palette CSS variables on the document root and body. Check the resulting foreground/background combinations in the modes you use.

Each row shows a cover, section, content, and quote slide using the named palette. These previews show one configuration; your content mode and installed fonts also affect the result.

Live Examples ​

After cloning and installing the repository, run a palette example from the repository root:

ThemeCommand
Classic Bluepnpm run dev -- examples/example-classic-blue.md
Oxford Burgundypnpm run dev -- examples/example-oxford.md
Cambridge Greenpnpm run dev -- examples/example-cambridge.md
Yale Bluepnpm run dev -- examples/example-yale.md
Princeton Orangepnpm run dev -- examples/example-princeton.md
Nordic Bluepnpm run dev -- examples/example-nordic.md
Monochromepnpm run dev -- examples/example-monochrome.md
Warm Sepiapnpm run dev -- examples/example-sepia.md
High Contrastpnpm run dev -- examples/example-high-contrast.md

The decks in examples/ use theme: ../ so they work when running Slidev from this repository. If you installed the theme from npm, change it to theme: scholarly.

Theme implementation and preview regeneration are documented in Contributing.