Getting Started

Create your first Cuppa Studio presentation in under 5 minutes.

Two Ways to Start

Pick whichever fits your workflow:

Option A: Cuppa Studio (Browser)

The fastest way to get started — no install needed. Studio is a browser-based IDE with a live preview, AI generation, 10 starter templates, and HTML export.

Open Cuppa Studio →

Option B: CLI (Terminal)

Cuppa Studio requires Node.js 20 or later. No global install needed — use npx:

npx mycuppa init my-talk

This creates a my-talk/ directory with a starter slides.md file.

Writing Slides

Slides are separated by --- on its own line. The first block is document frontmatter:

---
title: My Tech Talk
author: Jane Developer
theme: dark
---

# Welcome to My Talk

### Built with Cuppa Studio

---

## Key Points

- First point
- Second point
- Third point

---
layout: quote
---

> "Code is poetry."

---

## Thank You!

Get started at [cuppa.studio](https://cuppa.studio)

Document Frontmatter

The first --- block sets presentation-level properties:

PropertyTypeDescription
titlestringPresentation title (shown in browser tab)
authorstringAuthor name
themestringTheme name: dark, light, minimal, corporate, elegant, bold, forest, ocean
descriptionstringPresentation description
presentationTemplatestringTemplate family: tech-talk, pitch-deck, workshop, changelog

Per-Slide Directives

Each slide separator can include optional directives:

---
layout: image-right
background: #1a1a2e
transition: fade
image: ./images/diagram.png
---

## My Custom Slide

Content uses the specified layout.
DirectiveValuesDescription
layoutintro, section, center, header-body, split, code-focus, quote, image-left, image-right, image-full, full, blank, endOverride auto-detected layout
backgroundColor or image pathSlide background
transitionfade, slide, noneTransition to this slide
imageImage pathImage for image layouts
templatee.g. tech-talk/intro, pitch-deck/heroScene template for styled slide chrome
badgestringBadge label shown on template slides
accentBarColor hexColored bar at top of slide

Scene Templates

Scene templates add professional chrome (badges, accent bars, designed lists) to your slides. Set presentationTemplate in frontmatter for auto-assignment, or use template per-slide:

---
title: My Talk
presentationTemplate: tech-talk
---

---
template: tech-talk/intro
badge: "DEMO"
footerKeywords: "Fast · Simple · Beautiful"
---

# My Talk Title

### Subtitle here

---

## Key Features

- **Speed** — Sub-100ms builds
- **Scale** — Handle thousands of users
- **Safety** — Zero-downtime deployments

---
template: tech-talk/closing
badge: "DEMO"
---

## Thank You!

Available template families:

FamilyScene TemplatesBest For
tech-talkintro, content, code, section, closingDeveloper presentations
pitch-deckhero, problem, solution, metrics, ctaStartup pitches
workshopintro, step, exercise, checkpoint, summaryTutorials and workshops
changelogcover, feature, breaking, fixes, creditsRelease notes

Lists inside templates render as designed card rows with multi-color accents. Use **Title** — Description for two-line items.

Building & Serving

# Build markdown to .cup
mycuppa build slides.md

# Serve with hot reload (watches markdown for changes)
mycuppa serve slides.md

# Serve a pre-built .cup file
mycuppa serve slides.cup

# Export to standalone HTML
mycuppa export slides.cup --out talk.html

Presenter Mode

Present like a pro with the built-in backstage remote. Serve with the --backstage flag:

mycuppa serve slides.md --backstage
# → Slides:    http://localhost:3000/
# → Backstage: http://localhost:3000/backstage
# → LAN:       http://192.168.1.10:3000/backstage

Open the LAN URL on your phone to get a wireless remote with slide previews, speaker notes, and a timer. Navigate from your phone while the audience sees the main screen.

Keyboard Shortcuts

KeyAction
Right / SpaceNext slide
LeftPrevious slide
FToggle fullscreen
OSlide overview grid
NPresenter view
PPlay/pause autoplay

AI Generation

Generate presentations with AI (requires ANTHROPIC_API_KEY):

# Generate from a prompt
mycuppa ai "Explain OAuth 2.0 in 8 slides"

# Generate from existing content
mycuppa ai --from meeting-notes.md

# Refine an existing presentation
mycuppa ai --refine my-talk/

# Generate and immediately serve
mycuppa ai "Quick standup update" --serve

Speaker Notes

Add speaker notes with HTML comments:

## My Slide Title

Content here.

<!-- notes: These are speaker notes visible
in the presenter view. They won't appear
on the main slides. -->

Auto Drive

Don't know how to present your slides? Auto Drive narrates your presentation for you. AI generates a transcript for each slide, then reads it aloud while stepping through your content automatically — like a video, but interactive and updatable.

Browse any presentation in the library and click Auto Drive to try it.

To generate transcripts for your own presentations via CLI:

# Generate transcripts for a presentation
mycuppa transcribe my-talk/

# Batch-generate for all presentations in a directory
mycuppa transcribe public/presentations/

The Full Pipeline

Cuppa Studio covers the entire journey from idea to presented content:

  1. Prompt — Describe your topic, AI generates a complete markdown presentation
  2. Edit — Refine in Studio or your editor with live preview
  3. Build — Compile to animated slides with 17 element types and smart layouts
  4. Present — Click Present, or let Auto Drive narrate it for you

Next Steps