Design system · for Slidev

A design system for Slidev.

Tokens, components and patterns — so a deck is something you assemble, not style. Seven themeable variants, keynote-grade output, written in plain frontmatter.

npm i slidev-theme-tahta
One Slidev deck rendered in all seven tahta variants: editorial, brutalist, soft, minimal, paper, atelier, notebook
Why a system, not a theme

Substance, not a stylesheet

Most Slidev themes are some CSS and a few layouts. tahta has the parts of an actual design system — and a test that enforces its own rules.

Tokens as a contract

A 3-tier token layer (primitives → semantic → variants), shipped as tokens.json. One accent derives the whole palette via OKLCH.

Components & 20 patterns

Stat, Plot (charts), Callout, Badge, Icon, Reveal, Fit — and 20 layouts, all variant-aware, all documented in layouts.json.

Quality enforced

CI gates a token-contract and WCAG-AA contrast for every variant. Accessible by construction, not by hope.

Author from frontmatter

Pick a layout, fill fields. No CSS, no grids, no layout HTML. Auto footers, page numbers, motion.

Live explorer

Every layout, in any variant

The same deck — every layout and component — switched live across all seven variants. Click the frame and use arrow keys.

variant: editorial · shareable as gallery/?variant=…

Example decks

Real decks, real content

Authored almost entirely in frontmatter — the honest test of the system.

Quick start

Three lines to a deck

Install, point a deck at it, pick a variant. See the contract in AGENTS.md.

npm i slidev-theme-tahta echarts

---
theme: slidev-theme-tahta
title: My Talk
themeConfig: { variant: atelier }   # or editorial · brutalist · soft · minimal · paper · notebook
layout: cover
kicker: Team · 2026
---