Skip to content

Getting Started

Clone the repository and install dependencies:

Terminal window
git clone --branch v0.9.0 https://github.com/peas/stellardeck.git
cd stellardeck
npm install

Open one of the included sample decks in your browser:

Terminal window
npm run preview -- demo/bean-to-bar-chocolate.md

This starts a local server and opens the deck. Press arrow keys to navigate, G for grid view, P for presenter mode.

Other samples to try: demo/hand-balancing.md, demo/vibe-coding.md.

Create a file called my-deck.md:

# Hello World
Welcome to StellarDeck.
---
# Second Slide
That's it — `---` separates slides.

Then preview it:

Terminal window
npm run preview -- my-deck.md

StellarDeck turns plain markdown into presentation slides. Write text, separate with ---, and you have a deck.

Frontmatter at the top configures the deck. --- on its own line separates slides.

slide.md
footer: stellardeck.dev
slidenumbers: true

# My First Slide

Welcome to StellarDeck.

Use #, ##, ### for heading levels.

slide.md
# Main Title

## Subtitle

### Section heading

Regular text below headings.

Add [fit] after # to make headings stretch to fill the slide width.

slide.md
#[fit] Auto-fit Headings

^ Add [fit] after # to make headings fill the slide width.

Unordered lists use -, ordered use 1.. Nest with two spaces.

slide.md
# Shopping List

- Apples
- Bananas
- Yellow ones
- Green ones
- Oranges

1. First step
2. Second step

Use > for blockquotes. They render with an accent-colored left border.

slide.md
> The best way to predict
> the future is to invent it.
> — Alan Kay

Lines starting with ^ become speaker notes — invisible on the slide, visible in presenter mode (P).

slide.md
# Key Point

The important thing to remember.

^ This note is only visible in presenter mode. The audience never sees it.

[.build-lists: true] reveals list items one at a time on click.

slide.md
[.build-lists: true]

# Agenda

- Introduction
- Main topic
- Conclusion

Press P in the desktop app to open a presenter window with the current slide, next slide preview, and speaker notes. Here’s what it looks like:

Current
Next
Speaker Notes
No notes for this slide.

Navigate with the arrows — the next slide preview and notes update automatically. In the desktop app, the presenter window syncs with the main window via BroadcastChannel.